我想动态生成相对布局因此,我可以从服务器获取数据多次重复数据。我想动态创建的布局ID是depart_flight_details_duration
,{{1}如何在一个循环中创建它们以便它将重复多个。请帮助我,这是我在android中的新功能。
XML
passenger_details_layout
答案 0 :(得分:0)
您必须使用自定义列表视图。
对于一个布局中的两个列表视图,请参阅此链接Link
答案 1 :(得分:0)
来自here
的LayoutInflater简单程序a - 将此布局设为activity_main.xml -
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
</LinearLayout>
b-这是我们将动态添加的隐藏布局,将其另存为hidden_layout.xml
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/hidden_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:id="@+id/text_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello, this is the inflated text of hidden layout"/>
<EditText
android:id="@+id/edit_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello, this is your name"/>
</LineraLayout>
c-现在这是主要活动的代码 -
public class MainActivity extends Activity
{
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
for(int i=0;i<numberOfRows;i++){
LinearLayout main = (LinearLayout)findViewById(R.id.main_layout);
View view = getLayoutInflater().inflate(R.layout.hidden_layout, main,false);
main.addView(view);
}
}
}
答案 2 :(得分:0)
RelativeLayout mDisplayBlock = (RelativeLayout)
LayoutInflater.from(getActivity()).inflate(
depart_flight_details_duration, null);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
mDisplayBlock.setLayoutParams(params);
您可以将此布局添加到主滚动视图
main_scroll_view_layout.addView(mDisplayBlock);
只需将此代码放在代码中的适当位置即可。