android - 以编程方式将 View 添加到具有权重的 LinearLayout

标签 android android-layout views

我遇到了以下问题: 对于一个问题应用程序,我想为一项调查实现一个很好的输出,显示可能的答案和回答特定问题的人的百分比。因此,我想在我的应用程序中添加一个显示百分比的“栏”。我尝试通过使用 View 并在线性布局中对它们进行加权来解决这个问题。

我想以编程方式添加不同的答案,这是我目前获得的代码。 我的问题是,我没有更接近于加权 View 和调整它们的大小。

/* Add all questions */ 
RelativeLayout my_root = (RelativeLayout) findViewById(R.id.ownerRL);

/* Add a new Linearlayout as a container for the question */
LinearLayout A = new LinearLayout(this);
A.setOrientation(LinearLayout.HORIZONTAL);
my_root.addView(A);

/* Create a new View in this container, for the status bar */
View new_view = new View(getBaseContext());
new_view.setBackgroundColor(Color.YELLOW);

LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(50, 20, 3);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) A.getLayoutParams();
params.addRule(RelativeLayout.BELOW, R.id.question1);   

A.addView(new_view);
View new_view2 = new View(getBaseContext());
new_view.setBackgroundColor(Color.GREEN);
ViewGroup.LayoutParams lp2 = new ViewGroup.LayoutParams(50, 20);
RelativeLayout.LayoutParams params2 = (RelativeLayout.LayoutParams) A.getLayoutParams();
params2.addRule(RelativeLayout.BELOW, R.id.question1);  
params2.addRule(RelativeLayout.LEFT_OF, new_view.getId());

A.addView(new_view2);

绿色 View 实际上应该在黄色 View 的右侧(不可见)。

如何管理它,使其创建一个高度为 4 像素的红/白条,并对红色和重量部分进行加权?

感谢您的帮助!

最佳答案

检查 this链接,像这样设置线性布局权重

LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT, 1.0f);

最后一个参数是权重。希望对您有所帮助。

关于android - 以编程方式将 View 添加到具有权重的 LinearLayout,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21822222/

相关文章:

android - 单击并长按按钮时在线性布局中添加阴影

xcode - Xcode,播放每个 View 的每种声音

grails - UrlMapping导致方法不呈现与默认 View 不同的 View

java - 如何从 LinearLayout 中删除所有 LinearLayouts?

java - 如何使用 EditText 和 RadioButtons(以及颜色集)顺利存储用户输入数据?

java - Gradle 项目同步失败 - Android Studio 0.8.14

android - 将数据从 Activity 传回已创建的 fragment

android - 如何居中进度条?

android - 查询方法参数应该是可以转换为数据库列的类型或包含此类类型的列表/数组

java - Android 应用程序中的 UnknownHostException 警告