Tworzę małą aplikację na Androida. Chciałbym wyświetlić tekst w widoku tekstowym z wieloma częściami do kliknięcia. (Każdy powinien pokazać inny komunikat)Android Wiele klikalnych ciągów w widoku tekstowym
W końcu udało mi się dowiedzieć, jak wyświetlać wiele rozpiętości w jednym widoku tekstowym, niestety metody onClick nie działają. Po prostu nic się nie dzieje, nawet linia logcat.
mam coś takiego:
SpannableStringBuilder ssb=new SpannableStringBuilder();
ssb.append("first second")
ssb.setSpan(new ClickableSpan() {
@Override
public void onClick(View v) {
//Eredmeny2.this is just the context, name of the whole class
Toast.makeText(Eredmeny2.this, "first", Toast.LENGTH_LONG).show();
}
}, 1, 3, 0);
ssb.setSpan(new ClickableSpan() {
@Override
public void onClick(View v) {
Toast.makeText(Eredmeny2.this, "second", Toast.LENGTH_LONG).show();
}
}, 7, 10, 0);
TextView t1=new TextView(this);
t1.setText(ssb);
...
Tekst jest podkreślony w porządku, ale nic się nie dzieje, kiedy i kliknij je. Jest częścią TableView, chociaż nie sądzę, że jest to istotne. Czy masz jakieś pomysły, dlaczego nic nie robi? Czego mi brakuje? Czy powinienem to zrobić na zupełnie inny sposób?
Z góry dziękuję.
plik układu ta część będzie wykorzystać to:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/ScrollView01"
android:background="#FF0000">
<TableLayout
android:id="@+id/TableLayout01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:stretchColumns="0"
android:showDividers="middle"
android:padding="3dp">
<TableRow
android:id="@+id/TableRow01"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/TextView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="3dp"
android:background="#000000"
android:textColor="#FFFFFF"
android:padding="6dp"
android:text="Hour"
android:textSize="20sp"
android:textStyle="bold" >
</TextView>
<TextView android:id="@+id/TextView02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20sp"
android:textStyle="bold"
android:text="Minute"
android:padding="6dp"
android:textColor="#FFFFFF"
android:background="#000000">
</TextView>
</TableRow>
</TableLayout>
</ScrollView>
i układ TextView że TextView korzysta bezpośrednio jest następujący:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:textSize="16sp"
android:background="#000000"
android:textIsSelectable="false"
android:textColor="#FFFFFF">
</TextView>
Możesz opublikować plik układu? – Noundla
Oczywiście, proszę, w zaktualizowanym pytaniu. – skandigraun
zmienić to na true ... android: textIsSelectable = "true" – Noundla