0

作成時にEditTextを含むアクティビティがありますが、ボタンをクリックすると、MinPickと呼ばれるカスタムビューに置き換えられます。findViewById()を介してビューを取得するには、別のクラスが必要です。しかしもちろん、IDを取得する変数を定義する必要があります。EditTextまたはMinPickのいずれか。EditTextでない場合、ある種の条件付きを行うにはどうすればよいですか。MinPickである必要があります。

4

2 に答える 2

1

返されたオブジェクトのクラスは、次を使用して確認できますinstanceof

final View v = findViewById(R.id.floating_component);
if (v instanceof EditText)
    // do stuff with the EditText instance;
else if (v instanceof MinPick)
    // do stuff with the MinPick instance;

一方、@Sergey Glotov正しいですが、状態を処理し、それらに基づいて適切なビューを表示する方がはるかに優れた手法です。

于 2012-05-14T14:28:13.673 に答える
0

「instanceof」を使用できます。

final View tempView = findViewById(R.id.XXXxxxxXXX);

if (tempView instanceof EditText)
{
// TODO Do some stuff
}
else
{
// TODO Do some other stuff
}
于 2012-05-14T14:25:10.413 に答える