2013-07-09
【Android】TextViewにonClickイベントを付与する
Android4.2にて。 TextView属性にXMLファイルからonClick属性を付与したもののクリックイベントが発動しなかった。Buttonなどでは普通に動いていたので、TextViewに原因があるようだった。
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Test"
android:onClick="testToast" />// アクティビティ
public void testToast(View view) {
Toast.makeText(getApplicationContext(), "Test OK!", Toast.LENGTH_SHORT).show();
}→クリックイベントが発動しない
これの解決策は、TextViewのandroid:clickable属性にtrueを与えること。
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Test"
android:clickable="true"
android:onClick="testToast" />これで、TextViewでもクリックイベントが発動するようになる。

h3pei
フリーランスのソフトウェアエンジニア。Ruby / Rails アプリケーションの開発が得意領域。設計・実装・運用まで含めてプロダクト開発が好きです。
Questalという目標達成コミュニティサービスを開発しました。仲間と一緒に目標達成に取り組みたい方はぜひご利用ください。