2016-04-06 6 views
-4

Ich arbeite an einem Android-Projekt. Es ist Blutspender Suche App. Wenn der Benutzer nach Blutspender sucht, wird der aktuelle Aufenthaltsort des Benutzers durch das GPS identifiziert. Die Koordinaten werden dann mit den Details in der Datenbank verglichen. Dann werden übereinstimmende Spenderkontaktdetails abgerufen.Wie implementiert man eine Ruftaste in der ListView?

Die Details werden im Format eines ListView gedruckt. Ich möchte eine Anrufoption mit diesen Details bereitstellen. für z. Wenn die Details angezeigt werden, kann der Benutzer lange auf die Telefonnummer drücken, um den Spender anzurufen. Kann dies implementiert werden?

Wie kann ich das umsetzen? Ist es möglich,

+0

Was willst du? Wie oder OnLongClicked auf TextView zu implementieren? –

+0

Die Details werden im Format eines ListView gedruckt. Ich möchte eine Anrufoption mit diesen Details bereitstellen. für zB. Wenn die Details angezeigt werden, kann der Benutzer lange auf die Telefonnummer drücken, um den Spender anzurufen. kann dies implementiert werden? –

Antwort

0
listView.setOnItemLongClickListener(new OnItemLongClickListener() { 

     public boolean onItemLongClick(AdapterView<?> arg0, View v, 
       int position, long arg3) { 
      Toast.makeText(ListViewTestActivity.this, "content"+position, Toast.LENGTH_LONG).show(); 
      return false; 
     } 
    }); 
+0

danke für den Code, aber ich muss Folgendes implementieren, die unten geschrieben werden: Die Details werden im Format eines ListView gedruckt. Ich möchte eine Anrufoption mit diesen Details bereitstellen. für z. Wenn die Details angezeigt werden, kann der Benutzer lange auf die Telefonnummer drücken, um den Spender anzurufen. Kann dies implementiert werden? –

0

Für Textview lang Klick:

textView.setOnLongClickListener(new OnLongClickListener() { 

    @Override 
    public boolean onLongClick(View v) { 
     callNumber(textView.getText().toString().trim()); 
     return true; 
    } 

}); Hier

ist die Methode, mit der Sie einen Anruf tätigen können:

private void callNumber(String telephoneNumber) { 
    Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + telephoneNumber.replace("-", ""))); 
    startActivity(intent); 
} 

Vergessen Sie nicht die Erlaubnis in AndroidManifest.xml Datei hinzufügen:

<uses-permission android:name="android.permission.CALL_PHONE" /> 
+0

funktioniert das für ListView? –

+0

Bitte teilen Sie Ihre Layout-Vorschau, um Ihr Problem besser zu verstehen. –

1

Implementieren setOnLongClickListener auf Ihrer Telefonnummer Textview. Zum Beispiel

txtPhoneNumber.setOnLongClickListener(new View.OnLongClickListener() { 
     @Override 
     public boolean onLongClick(View view) { 
     Uri number = Uri.parse("tel:"+ txtPhoneNumber.getText().toString); 
     Intent callIntent = new Intent(Intent.ACTION_DIAL, number); 
     startActivity(callIntent); 

     return true; 
     } 
    }); 

Und die Erlaubnis <uses-permission android:name="android.permission.CALL_PHONE" />

BTW verwenden Sie einen benutzerdefinierten Adapter für Ihre Listview?

Verwandte Themen