对于我的一个活动中的布局,我在右下方有一个浮动操作按钮。但由于某些原因,尽管设置了export class FooComponent implements OnInit{
constructor (private _services: Services, private cdRef:ChangeDetectorRef) {
this.cdRef.detectChanges();
}
,但按钮的边距上没有填充。
以下是XML代码:
app:useCompatPadding="true"
一些帮助会被推荐,谢谢!
答案 0 :(得分:1)
试试这个
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/android:list"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<android.support.design.widget.FloatingActionButton
android:layout_margin="16dp"
android:id="@+id/add_class_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
app:useCompatPadding="true" />
</android.support.design.widget.CoordinatorLayout>
答案 1 :(得分:1)
我希望这对你有用。
使用如下所示
<android.support.design.widget.FloatingActionButton
android:id="@+id/fabImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right|bottom"
android:layout_margin="16dp"
android:visibility="visible"
app:backgroundTint="@color/colorAccent"
app:borderWidth="0dp"
app:elevation="0dp"
app:fabSize="normal"
app:pressedTranslationZ="12dp"
app:rippleColor="#dadada"
app:srcCompat="@mipmap/ic_image" />
答案 2 :(得分:0)
原因是你没有提供保证金。这应该工作
<android.support.design.widget.FloatingActionButton
android:contentDescription="@string/menu_compose"
android:id="@+id/add_class_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right|end"
android:layout_marginBottom="16dp"
android:layout_marginRight="16dp"
android:layout_marginEnd="16dp"
app:useCompatPadding="true"
android:src="@drawable/ic_add_white_24dp"
app:fabSize="normal"/>
答案 3 :(得分:0)
app:useCompatPadding="true"
将使填充在不同的API版本之间保持一致。但是,这似乎仍然会使默认边距略微偏离,因此您可能需要调整它们。但至少不再需要特定于API的样式。
您可以使用特定于API的样式轻松完成此操作。在您的正常values/styles.xml
中,输入以下内容:
<style name="floating_action_button">
<item name="android:layout_marginLeft">0dp</item>
<item name="android:layout_marginTop">0dp</item>
<item name="android:layout_marginRight">8dp</item>
<item name="android:layout_marginBottom">0dp</item>
</style>
然后在values-v21 / styles.xml下,使用:
<style name="floating_action_button">
<item name="android:layout_margin">16dp</item>
</style>
并将样式应用于您的FloatingActionButton:
<android.support.design.widget.FloatingActionButton
...
style="@style/floating_action_button"
app:useCompatPadding="true"
...
/>
正如其他人所指出的那样,在API&lt; 20中,按钮呈现自己的阴影,这会增加视图的整体逻辑宽度,而在API&gt; = 20时,它会使用新的Elevation参数到视图宽度。