- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图将 TableRow
分成 4 个相等的部分。第一个是 TextView
,最后三个是 RadioGroups
。我已成功将 TableRow
分成这些相等的部分。但是,每行都是动态构建的,每个 RadioGroup
可能最多有 5 个 RadioButton
。当在每个 RadioGroup
中构建具有 5 个 RadioButtons
的 TableRow
时,所有内容都会显示并起作用,但 RadioButtons
会被压在一起。发生这种情况时,是否有某种方法可以让 RadioGroup
具有多行,但仍保留在同一 TableRow
的同一部分?基本上就像 TextView
当给定正确的参数时会变成多行?
本例的 Java 代码:
RadioButton rb1, rb2, rb3, rb4, rb5;
RadioGroup rg;
TextView tv;
TableLayout tl = (TableLayout) this.findviewById(R.string.tl);
LayoutInflater inflater = getLayoutInflater();
//set up TableRow and TextView
TableRow tr = (TableRow)inflater.inflate(R.layout.tablerow3q, tl, false);
tr.setBackgroundColor(Color.LTGRAY);
tv = (TextView)tr.findViewById(R.id.tv);
tv.setText("Some text");
//loop sets up 1 RadioGroup per increment, each with 5 RadioButtons
for(int i = 0; i < 3; i++) {
rb1 = new RadioButton(this);
rb2 = new RadioButton(this);
rb3 = new RadioButton(this);
rb4 = new RadioButton(this);
rb5 = new RadioButton(this);
rb1.setText("test1");
rb2.setText("test2");
rb3.setText("test3");
rb4.setText("test4");
rb5.setText("test5");
//without these layouts, only four buttons are displayed, the other is cut off
rb1.setLayoutParams(new RadioGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f);
rb2.setLayoutParams(new RadioGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f);
rb3.setLayoutParams(new RadioGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f);
rb4.setLayoutParams(new RadioGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f);
rb5.setLayoutParams(new RadioGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 1f);
//add RadioButtons to correct RadioGroup based on loop increment
if(i == 0) {
rg1 = (RadioGroup)tr.findViewById(R.id.rg1);
rg1.addView(rb1);
rg1.addView(rb2);
rg1.addView(rb3);
rg1.addView(rb4);
rg1.addView(rb5);
}
if(i == 1) {
rg1 = (RadioGroup)tr.findViewById(R.id.rg2);
rg1.addView(rb1);
rg1.addView(rb2);
rg1.addView(rb3);
rg1.addView(rb4);
rg1.addView(rb5);
}
if(i == 2) {
rg1 = (RadioGroup)tr.findViewById(R.id.rg3);
rg1.addView(rb1);
rg1.addView(rb2);
rg1.addView(rb3);
rg1.addView(rb4);
rg1.addView(rb5);
}
}
tl.addView(tr);
正在膨胀的 TableRow
的 XML 布局:
<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
android:id="@+id/tv"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_margin="1dip"
android:layout_weight="0.25"
android:background="#ffffff"/>
<RadioGroup
android:id="@+id/rg1"
android:layout_width="0dip"
android:orientation="horizontal"
android:layout_margin="1dip"
android:layout_weight="0.25"
android:background="#ffffff"/>
<RadioGroup
android:id="@+id/rg2"
android:layout_width="0dip"
android:orientation="horizontal"
android:layout_margin="1dip"
android:layout_weight="0.25"
android:background="#ffffff"/>
<RadioGroup
android:id="@+id/rg3"
android:layout_width="0dip"
android:orientation="horizontal"
android:layout_margin="1dip"
android:layout_weight="0.25"
android:background="#ffffff"/>
</TableRow>
最佳答案
RadioGroup 扩展了 LinearLayout,它不包装其内容。不过,有几个选项可以解决这个问题:
复制 RadioGroup
类的源代码并修改它以扩展不同类型的布局,例如 TableLayout
或 RelativeLayout
.您需要管理单选按钮的排列方式。
动态构建嵌套的TableLayout
并使用OnClickListener
来处理选择/取消选择各种单选按钮。
关于java - Android - RadioButtons 在 RadioGroup 中挤压 - 格式问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10913899/
我正在使用 matlab,而且对它还很陌生。我习惯了 Java 和其他语言。 一些背景:我正在操作图像,我使用 imread、imshow 等命令。我想将多个图像存储在一个数组中。 所以我要做的是 i
我想使用 GitLab 私下处理我的存储库,但出于可见性和可访问性目的,在 GitHub 上保留主分支的公共(public)副本。是否可以“自动化”GitHub 和 GitLab 远程主分支的镜像,但
我有一个大型的旧 git 存储库,其中包含许多托管在本地 Redmine 服务器上的二进制文件。我想将特定日期(6 个月或 12 个月前)之前的所有评论压缩在一起,以节省一些我的 repo 协议(pr
我有一个容器DIV 高度:400px; 宽度:80%; 我有一组不同尺寸的图片。 我如何指定图像: 始终保持纵横比 始终填充容器-div 与容器 div 的中心对齐 当 div 比图像宽时 图片的宽度
我有一个 nwjs 应用程序,它指向包含 ember 应用程序的网址。在 ember 应用程序内部,我需要访问 Node 上下文以查看用户正在运行的操作系统,以便进行更新检查。我在初始化程序中这样做,
可以运行以下代码并且不会出现错误: >>> np.squeeze(['']) array('', dtype='>> np.squeeze([[]]) array([], dtype=float64)
我有三个基本表 A、B 和 C。A 和 B 有多对多关系。所以我使用 A_B 的连接表。 C 与 A_B 具有一对多关系。这就是它们在使用 sequelize 时的定义方式。 A.associate
在 Git 中我有以下情况: o "ok" b6ca869 [my_branch*] | o "ok" 479d27c | o "ok" c80fad5 | o "ok" 8f7fe87 | o
我打算制作一个类似于 AudioSurf 的游戏对于 iOS,并在其中实现“生成特定参数的路由”。我使用了 Unity Procedural Example 中的 Extrude Mesh 示例和这个
我正在使用 AudioKit version 4.2在我的手机 (iPhone X) 上安装我的应用程序后,我收到此错误(见附图)- Xcode error when using AKRhodesPi
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 11 年前。 Improve thi
在优化 Lollipop Material 主题的应用时,我遇到了这个烦人的问题: 当对话框按钮上的长文本不适合按钮栏的总宽度时,这些按钮的文本不会像以前的主题中那样包含在多行中。相反,以下按钮被挤出
我正在尝试在 Windows7 主机 PC 上运行的 Linux debian VM 上配置挤压。以前它运行正常,我能够记录 AUT 并生成脚本。但是当我重新启动虚拟机时,突然出现此错误,并且我无法解
我是一名优秀的程序员,十分优秀!