我想在我的应用程序上使用FloatingActionButton,我读到这个:https://guides.codepath.com/android/Floating-Action-Buttons#google-s-official-support-library但是当我运行Activity我有这个错误:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xavier_laffargue.podcast/com.xavier_laffargue.podcast.ACT_Test}: android.view.InflateException: Binary XML file line #1: Error inflating class android.support.design.widget.CoordinatorLayout
Run Code Online (Sandbox Code Playgroud)
XML文件
<android.support.design.widget.CoordinatorLayout
android:id="@+id/main_content"
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/lvToDoList"
android:layout_width="match_parent"
android:layout_height="match_parent"></ListView>
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_margin="24dp"
android:src="@drawable/ic_action_refresh"
app:layout_anchor="@id/lvToDoList"
app:layout_anchorGravity="bottom|right|end" />
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)
Graddle
*apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.xavier_laffargue.podcast"
minSdkVersion 21
targetSdkVersion 20
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile …Run Code Online (Sandbox Code Playgroud) 我使用这个库https://github.com/futuresimple/android-floating-action-button.如何更改主按钮的图像?我想在选择一个较小的按钮后立即更改按钮图像.
我正在使用这个库实现一个浮动操作栏,当屏幕上出现小吃栏时,我似乎无法找到移动按钮的方法.这个图书馆甚至可以吗?
我的应用程序崩溃是因为
扩展类android.support.design.widget.FloatingActionButton时出错
这是我在XML中的代码
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_margin="16dp"
android:src="@drawable/icon_right"
app:backgroundTint="@color/green"
android:onClick="previewphoto"
app:layout_anchorGravity="bottom|right|end" />
Run Code Online (Sandbox Code Playgroud)
这是我的傻瓜
compile 'com.android.support:appcompat-v7:23.4.0' // appcompat library
compile 'com.android.support:design:23.4.0'
Run Code Online (Sandbox Code Playgroud)
我的logcat
致命异常:主要过程:com.cyanlabsid.cetakphoto,PID:15298了java.lang.RuntimeException:无法启动活动ComponentInfo {com.cyanlabsid.cetakphoto/com.cyanlabsid.cetakphoto.PhotoPicker}:android.view.InflateException:二进制XML文件行#76:二进制XML文件行#76:错误充气类android.support.design.widget.FloatingActionButton在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2423)在android.app.ActivityThread.handleLaunchActivity(ActivityThread. java:2483)在Android.app.Handler.dispatchMessage(Handler.java:)的android.app.ActivityThread.access $ 900(ActivityThread.java:153)android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1349) 102)在android.app.Looper.loop(Looper.java:148)的android.app.ActivityThread.main(ActivityThread.java:5441),位于com.android的java.lang.reflect.Method.invoke(Native Method) .internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:738)at com.android.internal.os.ZygoteInit.main(ZygoteInit.ja va:628)由以下原因引起:android.view.InflateException:二进制XML文件行#76:二进制XML文件行#76:在android.view.LayoutInflater.inflate(LayoutInflater)中输出类android.support.design.widget.FloatingActionButton时出错.的java:543)在android.view.LayoutInflater.inflate(LayoutInflater.java:427)在android.view.LayoutInflater.inflate(LayoutInflater.java:374)在android.support.v7.app.AppCompatDelegateImplV9.setContentView(AppCompatDelegateImplV9.java :284)在android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140)在com.cyanlabsid.cetakphoto.PhotoPicker.onCreate(PhotoPicker.java:74)在android.app.Activity.performCreate(活动.的java:6303)在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108)在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2376)在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2483)在android.app.ActThread.access $ 900(ActivityThread.java:153)在android.app.Act ivityThread $ H.handleMessage(ActivityThread.java:1349)位于android.app.A.Toread.main的android.os.Handler.dispatchMessage(Handler.java:102)android.os.Looper.loop(Looper.java:148) (ActivityThread.java:5441)在java.lang.reflect.Method.invoke(本机方法)在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:738)在com.android.internal.os .ZygoteInit.main(ZygoteInit.java:628)
有人能说出我的错吗?
我试图实现 FloatingActionButton 由 谷歌设计支持库分为两个三个选项卡,并根据材料的设计准则- FloatingActionButton 它说:
如果在多个横向屏幕(例如选项卡上)上有浮动操作按钮,则在进入每个屏幕时,如果每个屏幕上包含的操作不同,该按钮应显示并隐藏.如果操作相同,则按钮应保留在屏幕上(如有必要,将转换为新位置.)

如何在我的应用程序中为FAB按钮进行此类转换或动画?
我正在创建一个Android应用程序,我正在使用AndroidX库和Material设计主题.我的应用主题styles.xml是:
<style name="AppTheme" parent="Theme.MaterialComponents.Light.DarkActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
Run Code Online (Sandbox Code Playgroud)
我从库中有以下FAB按钮:
<com.leinardi.android.speeddial.SpeedDialView
android:id="@+id/work_log_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
app:layout_behavior="@string/speeddial_scrolling_view_snackbar_behavior"
app:sdMainFabClosedSrc="@drawable/ic_add_white_24dp"
app:sdOverlayLayout="@id/overlay" />
Run Code Online (Sandbox Code Playgroud)
并尝试了默认的FAB:
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:src="@drawable/ic_add_white_24dp"
android:layout_margin="16dp" />
Run Code Online (Sandbox Code Playgroud)
没有图标的颜色(矢量可绘制),FAB内的图标(来自库和默认图标)总是黑色.我已经将问题缩小到材料设计主题,因为使用旧的Theme.AppCompat.Light.DarkActionBar而不是新Theme.MaterialComponents.Light.DarkActionBar的FAB内的图标获得原始矢量drawable的颜色.
有谁知道为什么会发生这种情况以及如何解决这个问题?
android android-theme material-design floating-action-button androidx
我正在使用android.support.v4.view.ViewPager
我感谢任何提示和帮助
android android-viewpager material-design floating-action-button
我使用的是自定义视图中创建一个FloatingActionMenu具有FloatingActionButtons.我修改了这个类以使它几乎完美地工作,当我试图添加一个阴影时,我遇到了它的问题,阴影是由一个看不见的方块切割,因为类硬编码到一个正方形,我相信.
见下图:
我正在使用的类是这样我可以在菜单中有多个FloatingActionButtons(FAB).
这是班级:
package terranovaproductions.newcomicreader;
import android.animation.Animator;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.animation.TimeInterpolator;
import android.animation.ValueAnimator;
import android.content.Context;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Parcelable;
import android.support.annotation.NonNull;
import android.support.design.widget.FloatingActionButton;
import android.util.AttributeSet;
import android.util.Log;
import android.view.GestureDetector;
import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.AnticipateInterpolator;
import android.view.animation.OvershootInterpolator;
import android.widget.ImageView;
import android.widget.TextView;
import java.util.ArrayList;
/**
* Created by charry on 2015/6/11. https://gist.github.com/douo/dfde289778a9b3b6918f and modified by Tristan Wiley
*/
public class FloatingActionMenu extends ViewGroup { …Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的应用中创建一个浮动按钮.按钮在那里,但按钮中的图像有点向上(见图像).
我无法弄清楚它有什么问题.下面是浮动按钮的XML的一部分.
<android.support.design.widget.FloatingActionButton
android:id="@+id/buttonUp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="16dp"
android:layout_marginTop="480dp"
android:clickable="true"
android:scaleType="center"
android:src="@drawable/btn_back_to_top_3x"
app:layout_anchor="@id/layout"
app:layout_anchorGravity="bottom|right|end"
app:backgroundTint="@android:color/background_light"
app:fabSize="normal" />
Run Code Online (Sandbox Code Playgroud)
按钮显示我想要的位置.唯一的问题似乎是里面的图像不是中心.为什么会这样?
编辑:经过一些更多的环顾四周我意识到图像本身存在问题,其中图像实际上没有居中,底部有空间(导致图像向上推).
使用新的时FloatingActionButton,大小由确定app:fabSize="normal".如何设置dp引用的大小"normal"?
我试图创建values/attrs.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="app">
<attr name="fabSize">
<enum name="mini" value="50dp" />
<enum name="normal" value="100dp" />
</attr>
</declare-styleable>
</resources>
Run Code Online (Sandbox Code Playgroud)
但是我得到了错误
"normal" in attribute "fabSize" is not a valid integer
Run Code Online (Sandbox Code Playgroud)