我在我的应用程序中使用浮动操作按钮(FAB)来显示对话框,当我在安装了Lollipop 5.1.1的Xperia Z手机上测试我的应用程序时,一切都正常运行。
然而,在ASUS Zenfone 6手机上测试我的应用程序时,该FAB加载完美,但是当我尝试点击它时,似乎没有反应,对话框也没有显示出来。类似地,在安装了Jelly Bean 4.2.2的Xperia C手机上测试我的应用程序时,FAB也没有显示出对话框。
值得一提的是,我的min sdk版本为16。
我想问的是为什么会发生这种情况?我的代码有问题吗,或者是Android版本或API版本出了问题?
请查看我的代码。以下是XML代码:
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@drawable/ic_add_account"
android:visibility="invisible"
android:clickable="true"/>
这里是我声明和设置FAB监听器的方式:
FloatingActionButton fab;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
fab = (FloatingActionButton) getActivity().findViewById(R.id.fab);
...
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
showDialog();
}
});
...
}
让我困惑的是,它在Xperia Z上能够运行,但在ASUS Zenfone 6上却不能?