**Q.自分でxmlでデザインしたlistviewがクリックしても反応しません。どうしたらいいでしょうか?
**
class voiceActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_voice) val items = arrayListOf<String>("セリフ1","セリフ2","セリフ3") **val adapter = ArrayAdapter<String>(this, R.layout.list_item, R.id.text1,items) ** listView.adapter = adapter listView.onItemClickListener=ListItemClickListener() } private inner class ListItemClickListener:AdapterView.OnItemClickListener{ override fun onItemClick(parent:AdapterView<*>,view:View,position: Int,id:Long){ Toast.makeText(applicationContext, "セリフ:${id}", Toast.LENGTH_SHORT).show() } } }
↑がソースです。
listviewでいつもはandroidstudioにあらかじめ用意されているレイアウト使ってました。↓
[val adapter = ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,items)]
ArrayAdapterを調べてみると引数が4つの場合があったので、自分で作ったレイアウトを入れたら
表示はされました。が、全然クリックできません。androidstudioに元からあるlist_item_1なら
普通にトーストが出るのですが・・・。
レイアウトの「list_item.xml」のxmlです
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <ImageView android:id="@+id/voiceline" android:layout_width="wrap_content" android:layout_height="3dp" android:layout_weight="0" android:baselineAlignBottom="false" android:scaleType="center" app:srcCompat="@drawable/voiceline" /> <LinearLayout android:id="@+id/koumokuYoko" android:layout_width="fill_parent" android:layout_height="64dp" android:background="#AAFFFFFF" android:orientation="horizontal" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintHorizontal_bias="0.5" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent"> <ImageView android:id="@+id/bt_saisei" android:layout_width="56dp" android:layout_height="30dp" android:layout_gravity="center" android:layout_weight="1" app:srcCompat="@drawable/btotocheck" /> <TextView android:id="@+id/text1" android:layout_width="302dp" android:layout_height="60dp" android:layout_gravity="center" android:layout_weight="1" android:gravity="center_vertical" android:maxLines="3" android:text="ここに文章をいれる" android:textColor="#382C2E" /> <RadioButton android:id="@+id/radioButton" android:layout_width="39dp" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" android:buttonTint="#382C2E"/> </LinearLayout> </LinearLayout>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。