您的位置:首页 > 移动开发 > Android开发

Android View三种熟悉——visible,invisible,gone

2010-03-21 13:38 387 查看
在Android中,凡是view和view的子类都有visible,invisible 和 gone三种属性,下面是他们的区别:

visible: view显示出来

invisible:view隐藏起来

gone: view 从布局中删除



示例:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout
      android:orientation="vertical"
      android:background="@drawable/box"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content">
      <TextView
          android:background="@drawable/red"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:text="@string/visibility_1_view_1"/>
      <TextView android:id="@+id/victim"
          android:background="@drawable/green"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:text="@string/visibility_1_view_2"/>
      <TextView
          android:background="@drawable/blue"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:text="@string/visibility_1_view_3"/>
    </LinearLayout>
    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">
        <Button android:id="@+id/vis"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/visibility_1_vis"/>
        <Button android:id="@+id/invis"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/visibility_1_invis"/>
        <Button android:id="@+id/gone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/visibility_1_gone"/>
    </LinearLayout>
</LinearLayout>


public class Visibility1 extends Activity {
    private View mVictim;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.visibility_1);
        // Find the view whose visibility will change
        mVictim = findViewById(R.id.victim);
        // Find our buttons
        Button visibleButton = (Button) findViewById(R.id.vis);
        Button invisibleButton = (Button) findViewById(R.id.invis);
        Button goneButton = (Button) findViewById(R.id.gone);
        // Wire each button to a click listener
        visibleButton.setOnClickListener(mVisibleListener);
        invisibleButton.setOnClickListener(mInvisibleListener);
        goneButton.setOnClickListener(mGoneListener);
    }
    OnClickListener mVisibleListener = new OnClickListener() {
        public void onClick(View v) {
            mVictim.setVisibility(View.VISIBLE);
        }
    };
    OnClickListener mInvisibleListener = new OnClickListener() {
        public void onClick(View v) {
            mVictim.setVisibility(View.INVISIBLE);
        }
    };
    OnClickListener mGoneListener = new OnClickListener() {
        public void onClick(View v) {
            mVictim.setVisibility(View.GONE);
        }
    };
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: