Android转换视图到其真正的类

时间:2016-03-04 13:06:17

标签: java android

我有一个date-dialog-picker将从不同的视图中调用,其中视图可能是ButtonTextView或任何子类View。 如何在运行时知道谁是选择器的调用者。
我如何从View中获取真实对象类型,(View是所有其他小部件的超类,所以如何知道给定的小部件是TextView还是Button等等...... 感谢

3 个答案:

答案 0 :(得分:3)

使用instanceof获取调用者的类:

if (view instanceof TextView) {}

答案 1 :(得分:1)

使用instanceof。例如:

if (view instanceof TextView) {
     TextView textView = (TextView)view;
}

答案 2 :(得分:0)

将参数传递给DialogFragment,如下所示: Bundle args = new Bundle(); args.putInt(AlertDialog.ARGUMENT_VALUE, selfDestructValue.ordinal()); YourAlertDialog dialog = new YourAlertDialog(); dialog.setArguments(args); dialog.show();

然后您可以在对话框类

中通过getArguments处理此参数

或者您可以getContext()并选中instanseof

类型