私はAndroid開発に不慣れです。私の質問が非常に単純な場合は失礼します。
XMLを使用してAndroidレイアウトビューにボタンを作成しようとしました。今、Activityクラス内で、ボタンを取得し、クリックリストナーを追加しようとしています。これは問題なく正常に機能しています。
ボタンクリックの同様の行で、前に説明したダイアログがポップアップ表示されます。このダイアログには、ImageButtonがあります。この画像ボタンをクリックすると、以下のコードを使用してクリックリストナーを設定しようとしています。
The Activity on create is as below
@オーバーライド
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final Button button = (Button) findViewById(R.id.btnAdd);
button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
final Button btnAdd = (Button) findViewById(R.id.btnAdd);
if(v==btnAdd) {
dialog = new Dialog(this);
dialog.setContentView(R.layout.add_dialog);
dialog.setTitle("Test Title.");
dialog.setCancelable(true);
dialog.show();
final ImageButton button = (ImageButton) findViewById(R.id.imageButton1);
try {
Log.i("Log","1");
button.setOnClickListener(this);
Log.i("Log","2");
}
catch(Exception e)
{
Log.i("Log","3");
dialog.dismiss();
//Dialog d = new Dialog(this);
//d.setTitle("test.");
Toast.makeText(this,e.getMessage(),Toast.LENGTH_LONG).show();
Toast.makeText(this,e.getLocalizedMessage(),Toast.LENGTH_LONG).show();
Toast.makeText(this,e.toString(),Toast.LENGTH_LONG).show();
Log.i("Log","4");
//d.show();
Log.i("Log","5");
}
}
}
上記では、この順序でログを取得します。1,3,4,5。私は2を取得しません。トーストでは、空白、空白の後にjava.lang.Nullexceptionのメッセージが表示されます。
しかし、これを実行すると、強制的に閉じるポップアップが表示されます。これを行う方法をアドバイスしてください。または、同じ回避策はありますか?ボタンをクリックするためのダイアログボックスが必要です。次に、ダイアログ内に複数のボタンオプションが必要です。ダイアログのボタンごとに、さまざまなアクティビティを実行する必要があります。どんな種類の助けやアドバイスもありがたいです。よろしくお願いします。