android:layout_above
时间: 2023-04-24 22:01:55 浏览: 54
android:layout_above是一个布局属性,用于指定一个视图在另一个视图的上方布局。例如,如果你想让一个按钮在一个文本框的上方,你可以使用android:layout_above属性将按钮放置在文本框的上方。这个属性需要指定一个参考视图的ID,表示要在哪个视图的上方布局。
相关问题
<Button android:id="@+id/btn_prefer" android:layout_width="80dp" android:layout_height="40dp" android:layout_alignParentBottom="true" android:background="@drawable/bnav_tab_background" android:gravity="center" android:text="偏好选择" android:textSize="18sp" /> <Button android:id="@+id/btn_fullView" android:layout_width="50dp" android:layout_height="40dp" android:layout_above="@id/btn_prefer" android:layout_marginBottom="5dp" android:background="@drawable/bnav_tab_background" android:gravity="center" android:text="全览" android:textColor="#333333" android:textSize="18sp" /> <Button android:id="@+id/btn_road" android:layout_width="50dp" android:layout_height="40dp" android:layout_alignParentEnd="true" android:layout_alignParentBottom="true" android:background="@drawable/bnav_tab_background" android:gravity="center" android:text="路况" android:textColor="#333333" android:textSize="18sp" /> Hardcoded string "偏好选择", should use `@string` resource Hardcoded string "全览", should use `@string` resource Hardcoded string "路况", should use `@string` resource Hardcoded string "开始导航", should use `@string` resource
这段代码存在一些问题。其中,"偏好选择"、"全览"、"路况"和"开始导航"的文本应该使用`@string`资源来定义,而不应该直接写在布局文件中。这样做可以方便后续的国际化和本地化。你可以在`strings.xml`文件中定义这些文本,例如:
```
<string name="btn_prefer">偏好选择</string>
<string name="btn_fullView">全览</string>
<string name="btn_road">路况</string>
<string name="btn_startNavigation">开始导航</string>
```
然后在布局文件中使用`@string`引用这些资源,例如:
```
<Button
android:id="@+id/btn_prefer"
android:layout_width="80dp"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:background="@drawable/bnav_tab_background"
android:gravity="center"
android:text="@string/btn_prefer"
android:textSize="18sp" />
<Button
android:id="@+id/btn_fullView"
android:layout_width="50dp"
android:layout_height="40dp"
android:layout_above="@id/btn_prefer"
android:layout_marginBottom="5dp"
android:background="@drawable/bnav_tab_background"
android:gravity="center"
android:text="@string/btn_fullView"
android:textColor="#333333"
android:textSize="18sp" />
<Button
android:id="@+id/btn_road"
android:layout_width="50dp"
android:layout_height="40dp"
android:layout_alignParentEnd="true"
android:layout_alignParentBottom="true"
android:background="@drawable/bnav_tab_background"
android:gravity="center"
android:text="@string/btn_road"
android:textColor="#333333"
android:textSize="18sp" />
<Button
android:id="@+id/btn_startNavigation"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/btn_bg_selector"
android:paddingLeft="40dp"
android:paddingRight="40dp"
android:text="@string/btn_startNavigation"
android:textColor="@android:color/white"
android:textSize="16sp" />
```
<androidx.viewpager.widget.ViewPager android:id="@+id/main_vp" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@+id/main_bottom_layout"> </androidx.viewpager.widget.ViewPager>怎么用<android.support.v4.view.ViewPager>替换
如果你想要用 `android.support.v4.view.ViewPager` 替换掉 `androidx.viewpager.widget.ViewPager`,只需要将布局文件中的代码修改为以下内容即可:
```xml
<android.support.v4.view.ViewPager
android:id="@+id/main_vp"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/main_bottom_layout" />
```
这样就可以使用 `android.support.v4.view.ViewPager` 控件来实现同样的功能了。需要注意的是,在使用 `android.support.v4.view.ViewPager` 时,需要在项目中添加 Android Support Library v4 或 v13。