画面を開いた時に非表示にする。
最初にアプリの画面を開いた時に、非表示にする方法です。
今回はテキストビューを非表示にしてみますが、ボタンなどでもできます。
ボタンを押して表示/非表示を切り替える方法は→「ボタン2つ」「ボタン1つ」
最初の状態は↓です。
上の画像の、「テキスト2」を非表示にしてみます。
main.xmlは、表示する場合も非表示の場合も同じです。
(xmlで指定する場合は「android:visibility=""」を使用)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="#ffffff">
<TextView
android:id="@+id/text1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="テキスト1" />
<TextView
android:id="@+id/text2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="テキスト2" />
<TextView
android:id="@+id/text3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="テキスト3" />
</LinearLayout>
Activityに、setVisibility(View.INVISIBLE);を書き足します。
public class ●●●Activity extends Activity implements OnClickListener {
TextView tv1,tv2,tv3;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv1 = (TextView) findViewById(R.id.text1);
tv2 = (TextView) findViewById(R.id.text2);
tv3 = (TextView) findViewById(R.id.text3);
tv2.setVisibility(View.INVISIBLE);
}
public void …
実行するとこうなります。
テキスト2が消えました。
ただ、INVISIBLEで非表示にすると見えなくなるだけで、テキスト1と3の間に隙間ができてしまいます。
間を詰めて非表示にするためには、setVisibility(View.GONE);を使います。
Activityは、
public class HelloandroidActivity extends Activity implements OnClickListener {
TextView tv1,tv2,tv3;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv1 = (TextView) findViewById(R.id.text1);
tv2 = (TextView) findViewById(R.id.text2);
tv3 = (TextView) findViewById(R.id.text3);
tv2.setVisibility(View.GONE);
}
public void …
となり、実行すると、
テキスト1と3のすき間がなくなりました。
ボタンを押して表示/非表示を切り替える方法は→「ボタン2つ」「ボタン1つ」