我遇到了以下问题: 对于一个问题应用程序,我想为调查显示一个很好的输出,显示可能的答案和回答特定问题的人的百分比。因此,我想在我的应用中添加一个显示百分比的“条形图”。我尝试通过使用视图并在线性布局中对它们进行加权来解决此问题。
我想以编程方式添加不同的答案,这是我到目前为止所获得的代码。 我的问题是,我没有接近加权观点并调整它们的大小。
/* 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);
绿色视图实际上应该是黄色视图(不可见)。
如何管理它以创建一个高度为4px且红色和重量部分加权的红/白条?
感谢您的帮助!
答案 0 :(得分:9)
检查this链接,设置线性布局对此进行加权
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT, 1.0f);
最后一个参数是weight.Hope这个帮助。