小编rah*_*lrv的帖子

Java 8流和RxJava可观察量之间的差异

Java 8流是否类似于RxJava observables?

Java 8流定义:

java.util.stream包中的类提供Stream API以支持对元素流的功能样式操作.

observable java-8 rx-java java-stream

137
推荐指数
5
解决办法
4万
查看次数

DrawableCompat setTint不适用于API 19

我正在使用DrawableCompat来调整drawable,如下所示,着色似乎不适用于API 19.我正在使用支持lib版本23.3.0

Drawable drawable = textView.getCompoundDrawables()[drawablePosition];
if (drawable != null) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            drawable.setTint(color);
        } else {
            DrawableCompat.setTint(DrawableCompat.wrap(drawable), color);
        }
    }
Run Code Online (Sandbox Code Playgroud)

android android-support-library android-drawable

22
推荐指数
3
解决办法
9134
查看次数

使用Kotlin for Android进行数据绑定的问题

我正在尝试使用Kotlin为我的Android项目启用数据绑定.我启用了Kotlin插件,但我无法启用数据绑定我不断收到以下错误

Error:(66, 0) Could not find method kapt() for arguments [com.android.databinding:compiler:2.0.0-beta6] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler
Run Code Online (Sandbox Code Playgroud)

我的gradle文件中有数据绑定的以下依赖项

dependencies {
 ...
 kapt 'com.android.databinding:compiler:2.0.0-beta6'
} 

kapt {
    generateStubs = true
}
Run Code Online (Sandbox Code Playgroud)

data-binding android kotlin

21
推荐指数
1
解决办法
1万
查看次数

引起:retrofit.RetrofitError:方法POST必须有一个请求体

我正在使用改造进行后api调用,我在尝试命中端点时遇到以下错误.

     Caused by: rx.exceptions.OnErrorNotImplementedException: method POST must have a request body.
            at rx.Observable$30.onError(Observable.java:7334)
            at rx.observers.SafeSubscriber._onError(SafeSubscriber.java:154)
            at rx.observers.SafeSubscriber.onError(SafeSubscriber.java:111)
            at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber.pollQueue(OperatorObserveOn.java:197)
            at rx.internal.operators.OperatorObserveOn$ObserveOnSubscriber$2.call(OperatorObserveOn.java:173)
            at rx.internal.schedulers.ScheduledAction.run(ScheduledAction.java:55)
            at android.os.Handler.handleCallback(Handler.java:739)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:135)
            at android.app.ActivityThread.main(ActivityThread.java:5221)
            at java.lang.reflect.Method.invoke(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:372)
            at 
     Caused by: java.lang.IllegalArgumentException: method POST must have a request body.
            at com.squareup.okhttp.Request$Builder.method(Request.java:236)
            at retrofit.client.OkClient.createRequest(OkClient.java:59)
            at retrofit.client.OkClient.execute(OkClient.java:53)
            at retrofit.RestAdapter$RestHandler.invokeRequest(RestAdapter.java:326)
Run Code Online (Sandbox Code Playgroud)

试图访问后api

 @POST("/service/v2/auth/ip-address")
    rx.Observable<AuthState> verifyIP();
Run Code Online (Sandbox Code Playgroud)

实际的api电话

LoginService service = CKRestClient.get().create(LoginService.class);
            service.verifyIP().observeOn(AndroidSchedulers.mainThread()).subscribe(
                    new Action1<AuthState>() {
                        @Override
                        public void call(AuthState authState) {

                        }
                    });
        });
Run Code Online (Sandbox Code Playgroud)

android retrofit

12
推荐指数
2
解决办法
2万
查看次数

是否可以在不添加播放服务广告依赖性的情况下获取Android广告ID?

我正在使用Google Play广告依赖项来获取广告ID.

com.google.android.gms:播放服务的广告:7.8.0

有没有办法避免这种情况,因为库的方法计数为6201.

android google-play-services google-advertising-id

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

用于改造的定制转换器

我正在尝试使用自定义转换器进行Retrofit

 RestAdapter.Builder builder = new RestAdapter.Builder()
                .setEndpoint(BuildConfig.BASE_SERVER_ENDPOINT)
                .setClient(new OkClient(client)).setConverter(new CitationResponseConverter())
                .setLogLevel(RestAdapter.LogLevel.FULL);
Run Code Online (Sandbox Code Playgroud)

下面是我的自定义转换器

public class CitationResponseConverter implements Converter {

    @Override
    public Object fromBody(TypedInput typedInput, Type type) throws ConversionException {
        try {
            InputStream in = typedInput.in(); // convert the typedInput to String
            String string = fromStream(in);
            in.close(); // we are responsible to close the InputStream after use

            if (String.class.equals(type)) {
                return string;
            } else {
                return new Gson().fromJson(string,
                        type); // convert to the supplied type, typically Object, JsonObject or Map<String, Object>
            } …
Run Code Online (Sandbox Code Playgroud)

parsing android json gson retrofit

7
推荐指数
1
解决办法
6310
查看次数

如何在recyclerview中拥有可变的行高

我正在尝试在导航抽屉中创建一个recyclerview,其标题显示了配置文件信息.我希望标题高度高于其他行元素.下面是我的标题布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:background="@color/green"
    android:orientation="vertical"
    android:weightSum="1">



    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="56dp"
        android:orientation="vertical"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true">

        <TextView
            android:id="@+id/name"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="16dp"
            android:textColor="#ffffff"
            android:text="XXXXX"
            android:textSize="32sp"
            android:textStyle="bold"
            />

    </LinearLayout>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

当我将其设置为回收器视图的标题时,200dp高度不会反映在UI中

 RecyclerView.Adapter<NavDrawerListViewHolder> adapter = new NavDrawerListAdapter(this,TITLES,this);
        navList.setAdapter(adapter);
Run Code Online (Sandbox Code Playgroud)

以下是recyclerview的适配器:

public class NavDrawerListAdapter extends RecyclerView.Adapter<NavDrawerListViewHolder> {

    private static final int TYPE_HEADER = 0;
    private static final int TYPE_ITEM = 1;
    Context mContext;
    String[] mCharacterList;
    IListItemClickListener mListener;
    int holderViewType=0;

    public NavDrawerListAdapter(Context context, String[] characters, IListItemClickListener clickListener) {
        mContext = context;
        mCharacterList = characters; …
Run Code Online (Sandbox Code Playgroud)

android android-recyclerview

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

RecylerView以固定的第一行作为标题

我想创建一个带有固定第一行的循环器视图,它应该作为标题.另外,如何防止它与其他行元素一起滚动?

android android-recyclerview

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

在Android的内部存储器中创建音频文件

我希望在音频捕获期间创建的音频文件存储在内部存储器中并从那里回放。尝试这样做时,我正在让媒体播放器准备failed()

audio android voice-recording

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

java.lang.NullPointerException:尝试在空对象引用上调用虚方法'boolean java.lang.String.equals(java.lang.Object)'

运行时我的项目出错了.

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.olympic/com.prima.olympic.ProductDetail}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
Run Code Online (Sandbox Code Playgroud)

这是完整的日志:

06-06 23:12:45.561: E/AndroidRuntime(17135): FATAL EXCEPTION: main
06-06 23:12:45.561: E/AndroidRuntime(17135): Process: com.example.olympic, PID: 17135
06-06 23:12:45.561: E/AndroidRuntime(17135): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.olympic/com.prima.olympic.ProductDetail}: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
06-06 23:12:45.561: E/AndroidRuntime(17135):    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2693)
06-06 23:12:45.561: E/AndroidRuntime(17135):    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)
06-06 23:12:45.561: E/AndroidRuntime(17135):    at android.app.ActivityThread.access$900(ActivityThread.java:177)
06-06 23:12:45.561: E/AndroidRuntime(17135):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1448)
06-06 23:12:45.561: E/AndroidRuntime(17135):    at …
Run Code Online (Sandbox Code Playgroud)

java android nullpointerexception

-3
推荐指数
2
解决办法
5万
查看次数