ユーザーの行動に基づいて ImageView を表示および非表示にする必要があります。ImageView を非表示に設定しonCreate()
、ユーザーが OptionsMenu でアイテムを選択したときに再度表示しようとしました。奇妙なことに、まったく表示されず、アクティビティが再開された後にのみ表示されます。
XML コードは次のとおりです。
<ImageView
android:id="@+id/rectimage"
android:layout_width="20dp"
android:layout_height="20dp"
android:src="@drawable/rect" />
イメージビューを非表示にする場所
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
image = (ImageView) findViewById(R.id.rectimage);
image.setVisibility(View.INVISIBLE);
}
もう一度見えるようにしようとするところ
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_visible:
image.setVisibility(View.VISIBLE);
return true;
}
return false;
}
これは onStart と onResume で、何もしません。
@Override
protected void onStart() {
super.onStart();
Log.w(TAG, "-- ON Start --");
}
@Override
public void onResume() {
super.onResume();
Log.w(TAG, "-- ON Resume --");
}
そして、これがXMLのドローアブルリソースです
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="@android:color/transparent"/>
<corners android:radius="20px"/>
<stroke android:width="2dip" android:color="#000000"/>
</shape>