Android布局问题
下面我做错了什么。下面是我的问题 1.在一个main.xml文件中,可以有两个线性布局或故事布局 2.在下面单击按钮1时,我将linearlayout1的可见性设置为“不可见”,但不会发生Android布局问题,android,android-layout,Android,Android Layout,下面我做错了什么。下面是我的问题 1.在一个main.xml文件中,可以有两个线性布局或故事布局 2.在下面单击按钮1时,我将linearlayout1的可见性设置为“不可见”,但不会发生 super.onCreate(savedInstanceState); setContentView(R.layout.main); Button g_gal =(Button)findViewById(R.id.button1); final LinearLayout tr1 =(LinearLayo
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button g_gal =(Button)findViewById(R.id.button1);
final LinearLayout tr1 =(LinearLayout)findViewById(R.id.linearLayout1);
final LinearLayout tr2 =(LinearLayout)findViewById(R.id.linearLayout2);
tr2.setVisibility(View.INVISIBLE);
final Button g_gal =(Button)findViewById(R.id.button1);
g_gal.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
try {
tr2.setVisibility(View.VISIBLE);
tr1.setVisibility(View.INVISIBLE);
}
catch (Exception e)
{
Toast.makeText(getApplicationContext(),"Exception while displaying gallery: "+ e, Toast.LENGTH_SHORT).show();
}
}
});
main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical" android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<Button android:text="Browse Gallery" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
<LinearLayout android:id="@+id/linearLayout2" android:layout_width="wrap_content" android:layout_height="wrap_content">
<EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<requestFocus></requestFocus>
</EditText>
<Button android:text="Send SMS to Nav" android:id="@+id/sms" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:text="Back" android:id="@+id/back1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:id="@+id/linearLayout0" android:layout_width="wrap_content" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<Button android:text="Browse Gallery" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
<LinearLayout android:id="@+id/linearLayout2" android:layout_width="wrap_content" android:layout_height="wrap_content">
<EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<requestFocus></requestFocus>
</EditText>
<Button android:text="Send SMS to Nav" android:id="@+id/sms" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:text="Back" android:id="@+id/back1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
一个有效的XML文件只能有一个根,因此不能有两个线性布局作为根元素。创建另一个布局,其中包含作为子级的这两个布局 main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:orientation="vertical" android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<Button android:text="Browse Gallery" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
<LinearLayout android:id="@+id/linearLayout2" android:layout_width="wrap_content" android:layout_height="wrap_content">
<EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<requestFocus></requestFocus>
</EditText>
<Button android:text="Send SMS to Nav" android:id="@+id/sms" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:text="Back" android:id="@+id/back1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:id="@+id/linearLayout0" android:layout_width="wrap_content" android:layout_height="wrap_content">
<LinearLayout android:orientation="vertical" android:id="@+id/linearLayout1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<Button android:text="Browse Gallery" android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
<LinearLayout android:id="@+id/linearLayout2" android:layout_width="wrap_content" android:layout_height="wrap_content">
<EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content">
<requestFocus></requestFocus>
</EditText>
<Button android:text="Send SMS to Nav" android:id="@+id/sms" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
<Button android:text="Back" android:id="@+id/back1" android:layout_width="wrap_content" android:layout_height="wrap_content"></Button>
</LinearLayout>
1.在第一个线性布局下添加所有其他布局。现在,在添加线性布局和按钮后,您只需完成线性布局 2.要隐藏布局tr1,请尝试隐藏子级
int count=tr1.getChildCount();
for(int i=0;i<count;i++)
tr1.getChildAt(i).setVisible(false);
int count=tr1.getChildCount();
对于问题2的(int i=0;i。将视图设置为不可见,而不是将可见性设置为View.Gone
final LinearLayout tr1 =(LinearLayout)findViewById(R.id.linearLayout1);
tr1.setVisibility(View.Gone)
这对于布局来说更好。更多详细信息,请参阅Android文档