我正在尝试实现在我的片段类中以android编程方式创建一个按钮。但经过几个小时的搜索,我找不到合适的解决方案。 这是我的xml代码:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:background="#ffffff"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="77dp"
android:layout_weight="1.70"
android:background="#FFCDD2"
android:src="@drawable/airtel_round_s" />
<Button
android:id="@+id/airtelamt"
android:layout_width="188dp"
android:layout_height="77dp"
android:layout_weight="0.45"
android:background="#FFCDD2"
android:text="Button" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/iciciBtn"
android:layout_width="wrap_content"
android:layout_height="77dp"
android:layout_weight="1.70"
android:background="#FFE0B2"
android:src="@drawable/icici_logo_s" />
<Button
android:id="@+id/iciciamt"
android:layout_width="188dp"
android:layout_height="77dp"
android:layout_weight="0.45"
android:background="#FFE0B2"
android:text="Button" />
</LinearLayout>
</LinearLayout>
有人可以指导我吗?
以下是该应用的屏幕截图:
答案 0 :(得分:0)
您是否尝试以实用方式重复以下布局?
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="77dp"
android:layout_weight="1.70"
android:background="#FFCDD2"
android:src="@drawable/airtel_round_s" />
<Button
android:id="@+id/airtelamt"
android:layout_width="188dp"
android:layout_height="77dp"
android:layout_weight="0.45"
android:background="#FFCDD2"
android:text="Button" />
</LinearLayout>
然后使用ListView
1)像这样修改你的主要xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/listView"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
</ListView>
</LinearLayout>
2)创建一个新的xml文件并粘贴
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="77dp"
android:layout_weight="1.70"
android:background="#FFCDD2"
android:src="@drawable/airtel_round_s" />
<Button
android:id="@+id/airtelamt"
android:layout_width="188dp"
android:layout_height="77dp"
android:layout_weight="0.45"
android:background="#FFCDD2"
android:text="Button" />
</LinearLayout>
3)创建Adapter
以填充ListView
答案 1 :(得分:0)
您将从中获得有关您的问题的帮助:
ArrayList<String> mList = new ArrayList<String>();
mList.add("Button 0");
mList.add("Button 1");
mList.add("Button 2");
// this has added 3 buttons
ListAdapter mAdapter = new ListAdaper(getApplicationContext, mList);
if( /* your condition */ ) {
mList.add("Button "+i);
}
答案 2 :(得分:0)
为您的LinearLayout添加ID:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:background="#ffffff"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="horizontal"
android:id="@+id/myLinearLayout"><!-- i guess this is your LinearLayout-->
<ImageButton
android:id="@+id/imageButton1"
android:layout_width="wrap_content"
android:layout_height="77dp"
android:layout_weight="1.70"
android:background="#FFCDD2"
android:src="@drawable/airtel_round_s" />
<Button
android:id="@+id/airtelamt"
android:layout_width="188dp"
android:layout_height="77dp"
android:layout_weight="0.45"
android:background="#FFCDD2"
android:text="Button" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="horizontal">
<ImageButton
android:id="@+id/iciciBtn"
android:layout_width="wrap_content"
android:layout_height="77dp"
android:layout_weight="1.70"
android:background="#FFE0B2"
android:src="@drawable/icici_logo_s" />
<Button
android:id="@+id/iciciamt"
android:layout_width="188dp"
android:layout_height="77dp"
android:layout_weight="0.45"
android:background="#FFE0B2"
android:text="Button" />
</LinearLayout>
然后从java代码:
Button myButton = new Button(YourActivity.this);
myButton.setText("new button");
LinearLayout.LayoutParams param = new LinearLayout.LayoutParams(width, height, weight);
myButton.setLayoutParams(param);
myButton.setBackgroundResource(YourResource); // like "android:src"
myButton.setBackground(Drawable); // like "android:background"
LinearLayout ll = (LinearLayout)findViewById(R.id.myLinearLayout);
ll.addView(myButton, param);