布局与晶圆厂标题重叠。谁能帮我这个

时间:2019-09-16 20:30:29

标签: android xml android-studio floating-action-button

See this image for output

我已经使用this库创建了一个可扩展的FAB按钮。看到上面链接中的图像Fab Label布局与标题文本不匹配。

 <com.getbase.floatingactionbutton.FloatingActionsMenu
            android:id="@+id/mainFab"
            android:layout_width="90dp"
            android:layout_height="90dp"
            android:layout_alignParentRight="true"
            android:layout_alignParentBottom="true"
            android:layout_margin="16dp"
            app:fab_addButtonColorNormal="@color/colorAccent"
            app:fab_addButtonPlusIconColor="#000"
            app:fab_labelStyle="@style/custom_fab">

            <com.getbase.floatingactionbutton.FloatingActionButton
                android:id="@+id/picNote"
                android:layout_width="65dp"
                android:layout_height="65dp"
                app:fab_icon="@drawable/text_reader"
                app:fab_size="mini"
                app:fab_title="  Picture note" />

            <com.getbase.floatingactionbutton.FloatingActionButton
                android:id="@+id/ocrNote"
                android:layout_width="65dp"
                android:layout_height="65dp"
                app:fab_icon="@drawable/ic_text"
                app:fab_size="mini"
                app:fab_title="Scan Text" />

            <com.getbase.floatingactionbutton.FloatingActionButton
                android:id="@+id/textNote"
                android:layout_width="65dp"
                android:layout_height="65dp"
                app:fab_icon="@drawable/ic_camera"
                app:fab_size="mini"
                app:fab_title="Text note" />
        </com.getbase.floatingactionbutton.FloatingActionsMenu>

2 个答案:

答案 0 :(得分:0)

com.getbase.floatingactionbutton.FloatingActionButton中使用

android:layout_width="wrap_content"

代替

android:layout_width="65dp"

答案 1 :(得分:0)

由于您使用的是第三方库,因此我建议您使用本机代码,该代码非常简单,您可以根据需要进行控制

这是

  

test.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity"
    android:orientation="vertical"
    >

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="50dp"
        app:srcCompat="@android:drawable/ic_dialog_email"/>

    <TextView
        android:visibility="visible"
        android:id="@+id/text"
        android:layout_toLeftOf="@+id/fab"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Menu"
        android:layout_marginBottom="22dp"
        android:layout_marginRight="16dp"/>

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="50dp"
        app:srcCompat="@android:drawable/ic_dialog_email"/>

    <TextView
        android:visibility="gone"
        android:id="@+id/text1"
        android:layout_toLeftOf="@+id/fab1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Item1"
        android:layout_marginBottom="22dp"
        android:layout_marginRight="16dp"/>

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="50dp"
        app:srcCompat="@android:drawable/ic_dialog_email"/>

    <TextView
        android:visibility="gone"
        android:id="@+id/text2"
        android:layout_toLeftOf="@+id/fab2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Item2"
        android:layout_marginBottom="22dp"
        android:layout_marginRight="16dp"/>

    <com.google.android.material.floatingactionbutton.FloatingActionButton
        android:id="@+id/fab3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom|end"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="50dp"
        app:srcCompat="@android:drawable/ic_dialog_email"/>

    <TextView
        android:visibility="gone"
        android:layout_toLeftOf="@+id/fab3"
        android:id="@+id/text3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Item3"
        android:layout_marginBottom="22dp"
        android:layout_marginRight="16dp"/>

</RelativeLayout>

这是您可以控制fab和文字动画的地方

  

test.java

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

import com.google.android.material.floatingactionbutton.FloatingActionButton;

public class test extends AppCompatActivity {

    FloatingActionButton fab1 ;
    FloatingActionButton fab2 ;
    FloatingActionButton fab3 ;
    TextView text1 ;
    TextView text2 ;
    TextView text3 ;
    boolean isFABOpen = false ;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test);
        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab1 = (FloatingActionButton) findViewById(R.id.fab1);
        fab2 = (FloatingActionButton) findViewById(R.id.fab2);
        fab3 = (FloatingActionButton) findViewById(R.id.fab3);
        text1 = (TextView) findViewById(R.id.text1);
        text2 = (TextView) findViewById(R.id.text2);
        text3 = (TextView) findViewById(R.id.text3);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                if(!isFABOpen){
                    showFABMenu();
                }else{
                    closeFABMenu();
                }
            }
        });
    }
    private void showFABMenu(){
        isFABOpen=true;
        fab1.animate().translationY(-150);
        text1.animate().translationY(-150);
        text1.setVisibility(View.VISIBLE);
        fab2.animate().translationY(-300);
        text2.animate().translationY(-300);
        text2.setVisibility(View.VISIBLE);
        fab3.animate().translationY(-450);
        text3.animate().translationY(-450);
        text3.setVisibility(View.VISIBLE);
    }

    private void closeFABMenu(){
        isFABOpen=false;
        fab1.animate().translationY(0);
        text1.animate().translationY(0);
        text1.setVisibility(View.GONE);
        fab2.animate().translationY(0);
        text2.animate().translationY(0);
        text2.setVisibility(View.GONE);
        fab3.animate().translationY(0);
        text3.animate().translationY(0);
        text3.setVisibility(View.GONE);
    }


}