我正在制作一个看起来像这样的XML布局:
但我不确定要使用哪种布局和视图,
不同部分将是一个指向其相关部分的图像按钮,还是我会怎么做?
我要添加不同的图像按钮,并让它们以线性布局到达其相关页面,这是正确的还是有更好的方法呢?
我还要如何在右上角做---?
答案 0 :(得分:1)
您应该使用recyclerview来实现列表。对于布局部分,请参考第一项,将头骨,文本和前进图标放在一个布局中,然后recyclerview将根据以下内容自动填充正确的数据您的数据模型。
您可以在此处找到有关recyclerview的更多信息:-
https://developer.android.com/guide/topics/ui/layout/recyclerview
答案 1 :(得分:0)
这种布局是通过使用RecycleView
完成的,但如果仅用于静态设计或静态数据,则需要将LinearLayout
与CardView
一起使用。这是在XML文件中使用的代码示例:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="100"
android:gravity="center_vertical">
<androidx.cardview.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:cardCornerRadius="4dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="20dp"
app:cardElevation="10dp">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingLeft="20dp"
android:paddingRight="20dp">
<ImageView
android:id="@+id/down1"
android:layout_width="25dp"
android:layout_height="25dp"
android:src="@drawable/ic_download" />
<View
android:layout_width="10dp"
android:layout_height="0dp"/>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Your Text Here"
android:textAppearance="@style/Base.TextAppearance.AppCompat.Subhead"
android:textColor="@color/black"
app:fontFamily="sans-serif-medium" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="end"
android:orientation="vertical">
<ImageView
android:id="@+id/img2"
android:layout_width="25dp"
android:layout_height="25dp"
android:src="@drawable/ic_down" />
</LinearLayout>
</LinearLayout>
<View
android:layout_width="0dp"
android:layout_height="10dp" />
</LinearLayout>
</androidx.cardview.widget.CardView>
</LinearLayout>
为确保此方法正常运行,请不要忘记在CardView
中为build.gradle
添加依赖项。您需要添加此行implementation 'com.android.support:cardview-v7:28.0.0'
。
如果要使用更多行,请不要忘记制作NestedScrollView
来启用滚动视图。
希望这会有所帮助。