我已经编写了一个应用程序,现在想设计 UI。问题是我有相同的数据(嗯,不一样,但是相同类型的数据,因为它是一个 XML 读数),现在我想设计它。但我认为我无法以编程方式获得我想要的设计。所以我想我用 XML 设计一次,然后在 for 循环中复制其他数据的布局。这可能吗?
如果是,怎么可能?我现在完成了一个条目的 XML,现在我希望所有其他条目都具有与其他条目相同的样式和布局......谢谢!
有一种简单的方法可以实现这一点。
xml 文件中有包含标签,您可以在多屏幕设计中使用一种布局。
例如。您已经为应用程序创建了标头,因此无需在所有文件中使用相同的代码,只需将该部分包含在每个 xml 文件中即可。
这是一个简单的例子,可以帮助你。
创建可重用的布局
标题栏.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width=”match_parent”
android:layout_height="wrap_content"
android:background="@color/titlebar_bg">
<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/gafricalogo" />
</FrameLayout>
使用标签:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width=”match_parent”
android:layout_height=”match_parent”
android:background="@color/app_bg"
android:gravity="center_horizontal">
<include layout="@layout/titlebar"/>
<TextView android:layout_width=”match_parent”
android:layout_height="wrap_content"
android:text="@string/hello"
android:padding="10dp" />
...
</LinearLayout>
您应该使用适配器来定义您的 ListView 元素。在这种情况下,您将为该适配器定义一个布局(使用 XML),该布局将应用于您的 ListView 中的每个元素。
最重要的是,使用适配器,它将为列表中的每个元素设置相同的 XML 布局。
(检查项目#3) http://docs.xamarin.com/guides/android/user_interface/working_with_listviews_and_adapters