Android - setOnClickListener für TextView
Sollte es Recht einfach sein, aber ich bin nicht sicher, wo etwas falsch ist.
Ich versuche, Sie zu fangen, klicken Sie auf die TextView
mit:
public void runNextTask(){
final View addView = getLayoutInflater().inflate(R.layout.addnewtracker, null);
final TrackerInfo newInfo = new TrackerInfo();
//set up for model selection
TextView modelTextview = (TextView)addView.findViewById(R.id.modelEdit)
modelTextview.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
}
});
}
Dir XML für die TextView
ist:
<TextView
android:id="@+id/model"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Tracker_model"
android:clickable="true"
android:onClick="onClick"/>
Aber wenn ich auf den TextView
geht es nicht in die onClick()
Methode.
Was bin ich?
Dank
- versuchen Sie, entfernen android:onClick="onClick"
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie diese entfernen:
Oder entfernen diese:
haben und diese:
android:onClick="onClick"/>
//Es wäre besser, die Methode umbenennen, um Verwirrung zu vermeidenAußerdem haben Sie diese:
so initialisieren Sie Ihre
TextView
wie folgt:Diese Zeile:
android:onClick="onClick"
Sagt Android zu sehen in der Aktivität für eine Methode mit dieser Signatur:Dies war nicht Ihre Absicht, als Sie sich gesetzt haben, die OnClickListener in Ihren code und haben nicht geschaffen, die eine spezielle Methode für die er in der Aktivität.
Also deine Optionen sind entweder entfernen Sie einfach die
android:onClick="onClick"
aus Ihrer xml-Datei, oder entfernen Sie die auf Klick-listener, die Sie erstellt haben, und ändern Sie es zu einem onClick-Methode (und preferablly ändern Sie den Namen, um etwas besseres als onClick...Ändern :
zu
und es gibt keine Notwendigkeit
android:onClick="onClick"
Sie in Ihrem xml-code, wenn Sie möchten, tun Sie dies mit java-codeWenn Sie den code ändern, um diese Struktur funktioniert es:
als Sie sagen in Ihrem xml zu erfassen, klicken Sie auf die für die text-Ansicht (
android:onClick="onClick"
) inonClick
- Modul, Sie brauchen nicht zu fügen Sie einen onClick-listener in java-code.