【发布时间】:2015-08-21 02:21:50
【问题描述】:
我正在保存和恢复我的一项活动中的视图可见性。我通过调用mButton.getVisibility() 并将其保存在Bundle 中来做到这一点。在我获得 int 值的 onRestore 中,它显示错误。
Must be one of: View.VISIBLE, View.INVISIBLE, View.GONE less... (Ctrl+F1)
Reports two types of problems:
- Supplying the wrong type of resource identifier. For example, when calling Resources.getString(int id), you should be passing R.string.something, not R.drawable.something.
- Passing the wrong constant to a method which expects one of a specific set of constants. For example, when calling View#setLayoutDirection, the parameter must be android.view.View.LAYOUT_DIRECTION_LTR or android.view.View.LAYOUT_DIRECTION_RTL.
代码编译运行没有错误
代码
@Override
public void onSaveInstanceState(@NonNull Bundle savedInstanceState) {
savedInstanceState.putInt("BUTTON_VISIBILITY", mButton.getVisibility());
super.onSaveInstanceState(savedInstanceState);
}
public void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
mButton.setVisibility(savedInstanceState.getInt("BUTTON_VISIBILITY"));
// savedInstanceState.getInt("BUTTON_VISIBILITY") is underlined red
}
【问题讨论】:
-
可以加
@SuppressWarnings("ResourceType") -
通常警告带有黄色下划线,这是红色下划线引起我的一些担忧
-
@SuppressWarnings("ResourceType") 有效!谢谢
标签: android android-view