Android

クリックリスナーが使えない

投稿日:2013年3月17日 更新日:

急に
型 View のメソッド setOnClickListener(View.OnClickListener)
は引数 (MainActivity.btnClickListener) に適用できません
なるエラーが出ました。

そういう場合は

		Button btnStart = (Button)findViewById(R.id.buttonStart);
		btnStart.setOnClickListener(new btnClickListener());
		↓
		btnStart.setOnClickListener((android.view.View.OnClickListener) new btnClickListener());

とすればOKです。
確認していませんが、
listviewをか何かをインポートして、onClickListernerの名前が重複してしまったんでしょうか。

本当の原因

下記のようなエラーがでます。

Uncaught handler: thread main exiting due to uncaught exception
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.ips/com.ips.nekotype.TESTActivity}: java.lang.ClassCastException: com.ips.nekotype.TESTActivity$ClickListenerStart

Eclipseでインポートしたパッケージが間違えていました。

import android.content.DialogInterface.OnClickListener; ×
 ↓
import android.view.View.OnClickListener; ○

	class ClickListenerStart implements OnClickListener{
		@Override 
		public void onClick(DialogInterface dialog, int which) { ×
              ↓
		@Override
		public void onClick(View v) { ○
			// TODO 自動生成されたメソッド・スタブ
		}

何事も原因究明が大切でした・・・反省です。

Gooleアドセンス用336

Gooleアドセンス用336

-Android
-

執筆者:

関連記事

AlarmManagerで定期処理を行う

私のやりたいことは、定期的にあるアクションが起動するアプリの作成です。 serviceでいいかと思っていたのですが、何故か画面がスリープした状態で停止します。 そこでAlarmManagerを使用する …

別スレッドから画面を制御するhandlerの使い方

別スレッドから画面(layout)を制御するにはhandlerを使用します。 制御したい画面を持つアクティビティに、handerの宣言をします。 宣言したhandlerはsendMessageメソッド …

音声認識と音声合成(Text-To-Speech)

INDEX1 音声認識2 音声合成(Text-To-Speech)3 サンプル 音声認識 音声認識で注意しなくてはいけないのは、何語で認識させるかです。 つまり英語として認識させるか、日本語として認識 …

SQLiteにadbでアクセスする

コマンドプロンプトでadbのあるディレクトリまでcdで移動します。 私の場合はD:\Users\xxx\android-sdks\platform-tools にしてあります。 # d: # cd D …

バインドを利用したservice

バインドを利用しないserviceもありますが、serviceは勝手に動き続けるか、自動的に停止するようにするかになります。 実際にはバインドを利用してserviceが起動している時にもアクションを連 …