小编Jos*_*hon的帖子

Android无法将FAB按钮锚定到BottomSheet

我正在尝试将FAB按钮附加到BottomSheet视图,就像谷歌地图一样.但是,我不能让它工作,

这是FAB按钮的代码:

 <android.support.design.widget.FloatingActionButton
    android:id="@+id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="@dimen/fab_margin"
    android:src="@android:drawable/ic_dialog_email"
    app:layout_anchor="@+id/nestedscrollview" --> BottomSheet view ID
    app:layout_anchorGravity="bottom|end"
    app:elevation="4dp"
    />
Run Code Online (Sandbox Code Playgroud)

这是BottomSheet View的代码

<android.support.v4.widget.NestedScrollView
android:id="@+id/nestedscrollview"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_behavior="android.support.design.widget.BottomSheetBehavior"
tools:context="com.pub.uac.ui.location.LocationActivity"
android:background="@color/background_white_trasnparent"
 > 
... 
</...
Run Code Online (Sandbox Code Playgroud)

android button floating-action-button

8
推荐指数
1
解决办法
2319
查看次数

Android ScrollView与ListView

我正面临一个View的实现,我必须在列表中加载大约100个项目.我怀疑可能是实现它的最佳方式.我已经知道ListView回收视图并将ScrollView所有内容保存在内存中.关键是我正在考虑应用分页Scrollview以避免在应用程序膨胀所有项目时的大量加载时间.

应用程序如Google+,Facebook,Twitter或Linkedin,您认为他们使用ListView吗?

谢谢

optimization android listview view scrollview

6
推荐指数
1
解决办法
6874
查看次数

Android效率导入静态方法或导入类

我在一些项目中看到人们将静态方法直接导入到 Activity 或类中,而不是整个类中。

我的问题是,知道一个静态方法可以在同一个类中被调用多次(为了更准确,5次或更多次),导入静态方法更有效还是通过它的类调用它更好?

java performance static android static-methods

5
推荐指数
1
解决办法
794
查看次数

如何在onAttach(活动活动)被解除后检查活动是否实现了接口

由于onTttach(Activity)已在SDK 23上弃用,这是Fragment生命周期中用于检查Activity是否正在实现接口的最佳方法?

此代码不再正确,将来甚至可以删除此方法.

 @Override
    public void onAttach(Activity activity) {
        super.onAttach(activity);

        if (activity instanceof OnInterfaceOfFragmentListener)
            mCallback = (OnInterfaceOfFragmentListener) activity;
        else
            throw new RuntimeException("OnInterfaceOfFragmentListener not implemented in activity");

    }
Run Code Online (Sandbox Code Playgroud)

android android-lifecycle android-fragments android-fragmentactivity

5
推荐指数
1
解决办法
2356
查看次数

Android MVP对验证有疑问

我开始在Android项目上实现MVP模式,我对在执行任何操作之前应该在哪里验证字段有一些疑问.

例如,如果我必须发送一个包含三个字段(名称,电子邮件,文本)的表单.我应该验证活动中的字段还是应该将它们发送给Presenter进行验证?

如果与演示者的通信必须仅使用已经验证的正确数据,我还不能100%确定.

validation mvp android

5
推荐指数
1
解决办法
2853
查看次数

Android android.credentials.UNLOCK 在没有密码的情况下初始化密钥库

有一个随机密钥来通过 AES 加密本地凭据,我正在按照以下教程尝试安全地存储该密钥,然后能够在以后解密:

nelenkov.blogspot.co.uk 在 android 中存储应用程序机密

本教程解释了如何访问系统密钥库并将密码存储在其中。

我面临的问题集中在调用UNLOCK ( android.credentials.UNLOCK ) KeyStore 上。未初始化 KeyStore 的设备(目前 API 低于 14),它们会显示一个对话框,要求输入 8 位密码。

本教程运行良好,但是显示此对话框甚至只显示一次,它会打扰大多数用户。

有什么办法可以跳过这个对话框吗?

如果有人描述了一种在本地保留密钥的更好方法,我会更高兴。

encryption android credentials aes android-keystore

3
推荐指数
1
解决办法
5920
查看次数

Rx Android并行地将多个调用组合到同一服务

我必须改进一个旧服务,即对同一服务进行多次连续调用,并将所有结果合并到一个列表中.

想象一下,我们有一个IDS = [1,2,3,... 6]的列表所以我必须使用每个ID调用相同的API(使用改进和Observables).

为此,我想使用Rx Android,但我对如何合并结果有疑问.

        Integer[] ids = {1, 2, 3};

        Observable.from(ids)
                .map(id -> mApi.getData(id))
Run Code Online (Sandbox Code Playgroud)

我们可以进行并行调用并按照相同的顺序合并结果吗?

为了改善时间响应,我们的想法是在并行中执行此操作,但我不知道如何确保结果将按照我们执行服务器调用的相同顺序进行组合.

我想使用concat(http://reactivex.io/documentation/operators/concat.html),但它等待以前的observable等待.

android rx-android rx-java2

3
推荐指数
1
解决办法
822
查看次数

警告使用 mockito-android

我使用 mockito 收到了这个警告

您在非 Android 环境中包含了“mockito-android”依赖项。Android 模拟制作器被禁用。您应该只在“androidTestCompile”配置中包含后者如果禁用是错误的,您可以将“org.mockito.mock.android”属性设置为“true”以覆盖此检测。

我可以在哪里设置消息所说的属性?

这个错误是关于什么的?

android mockito powermockito

3
推荐指数
1
解决办法
919
查看次数

如何在Dagger 2上重新启动Retrofits 2的依赖项

我在一个项目中使用了匕首2和retrofit2,该项目可以更改国家/地区配置以及您要请求数据的国家/地区的URL。

Dagger2有什么办法可以再次创建一个包含新URL的Retrofit实例?

因此,想法是每当用户更改国家/地区时,重新启动Retrofif的依赖关系。

android dagger-2 retrofit2

2
推荐指数
1
解决办法
1115
查看次数

Retrofit 2 和 GSON java.lang.IllegalArgumentException:字段映射包含键的空值

自从我从改造 1.9 迁移到 2.0 后,每次执行服务器请求时都会遇到以下错误

java.lang.IllegalArgumentException: Field map contained null 
value for key 'installments'.
Run Code Online (Sandbox Code Playgroud)

我调用的方法获取一个包含所有参数的 Map,如下面的代码:

@FormUrlEncoded
@POST("/api/method")
Call<Response<Payment>> pay(@FieldMap Map<String, String> fields);
Run Code Online (Sandbox Code Playgroud)

但似乎每当我们有一个具有 NULL 值的条目时,它就会抛出异常并且甚至不执行请求。

我们也在使用Dagger 2。这是使用Converter.Factory创建 GSON 的方式:

    @Provides
    @Singleton
    Converter.Factory provideGsonConverterFactory() {

       Gson gson = new GsonBuilder()
                .setDateFormat("yyyy-MM-dd hh:mm:ss")
                .setPrettyPrinting()
                .create();
       return GsonConverterFactory.create(gson);
    }
Run Code Online (Sandbox Code Playgroud)

在迁移到 Retrofit 2.0 之前,我们没有这个问题,这很奇怪。

事实上,杰克逊有一个属性可以做到:

      ObjectMapper mapper = new ObjectMapper().configure(SerializationConfig
.Feature.WRITE_NULL_MAP_VALUES, false);
Run Code Online (Sandbox Code Playgroud)

java android gson retrofit2

2
推荐指数
1
解决办法
4192
查看次数

有没有办法在样式文件中设置新的Android支持AutoSize Textview?

我正在尝试使用新的Android支持AutoSize,但我见过的所有示例都是在布局中添加它.但是我已经使用样式实现了大部分文本,因此我想将其添加到那里以便轻松访问所有视图.因为我正在使用支持,所以在样式文件中没有app:text ...就像我们通常使用的android:test ...

有没有办法添加它?

android autosize android-layout android-support-library

2
推荐指数
1
解决办法
343
查看次数