在 XML 中设置视图的相同宽度或高度
我开始学习android,我正在制作一个简单的游戏。在这个游戏中,我需要两个具有相同宽度的滚动列表,因此我在两个视图中将layout_weight参数设置为“1”。但是当我运行程序时,滚动视图有不同的大小。第二个问题是我需要 EditText 小部件较低,所以我对 TableRows 做了同样的事情,但最终我必须将权重设置为 0.1 才能达到所需的大小。
PS 如果有一些错误,请原谅我的英语
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget28"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TableRow
android:id="@+id/widget29"
android:layout_width="fill_parent"
android:layout_weight="7"
android:orientation="vertical" >
<ScrollView
android:id="@+id/widget34"
android:layout_height="150px"
android:layout_weight="1"
android:background="#ffff00ff" >
</ScrollView>
<ScrollView
android:id="@+id/widget35"
android:layout_height="150px"
android:layout_weight="1"
android:background="#ff00ffff" >
</ScrollView>
</TableRow>
<TableRow
android:id="@+id/widget30"
android:layout_width="fill_parent"
android:layout_weight="0.1"
android:orientation="vertical" >
<EditText
android:id="@+id/widget36"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Not editable"
android:textSize="18sp" >
</EditText>
</TableRow>
</TableLayout>
I started to learn android and I'm making a simple game. In this game I need two scroll lists with the same width, so I set layout_weight parameter to "1" in both views. But when I run program scroll views have different size. Second problem is that i need EditText widget to be low, so I did the same thing with TableRows, but in the end I have to set weight to 0.1 to achieve needed size.
P.S. Sorry for my english if there are some mistakes
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget28"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TableRow
android:id="@+id/widget29"
android:layout_width="fill_parent"
android:layout_weight="7"
android:orientation="vertical" >
<ScrollView
android:id="@+id/widget34"
android:layout_height="150px"
android:layout_weight="1"
android:background="#ffff00ff" >
</ScrollView>
<ScrollView
android:id="@+id/widget35"
android:layout_height="150px"
android:layout_weight="1"
android:background="#ff00ffff" >
</ScrollView>
</TableRow>
<TableRow
android:id="@+id/widget30"
android:layout_width="fill_parent"
android:layout_weight="0.1"
android:orientation="vertical" >
<EditText
android:id="@+id/widget36"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Not editable"
android:textSize="18sp" >
</EditText>
</TableRow>
</TableLayout>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题解决了,我用 LinearLayout 替换了第二个 TableRow,一切都开始正常工作。我不知道为什么,但两个 TableRow 都以某种方式连接,并且更改第二个 TableRow 的宽度更改了第一个 TableRow 的宽度
Problem solved, I replaced second TableRow with LinearLayout and everything started to work correctly. I don't know why but both TableRows were somehow connected and changing width of second one changed width of first one
您的 ScrollView 位于同一表格行。尝试将layout_weight 更改为0.5。那么他们俩都应该获得该行的一半。
Your ScrollViews are on the same table row. Try changing the layout_weight to 0.5 instead. Then both of them should get half of the row.