小编Aal*_*tel的帖子

git命令在android studio终端中无法识别

我刚刚下载了android studio以及git.exe.我在版本控制中更新了路径 - >> git也有适当的git.exe路径并经过测试并且成功.现在从终端输入git clone http:// my projectlink时,它说"'git'不被识别为内部或外部命令,可操作程序或批处理文件."

我错过了什么吗?

git android android-studio

9
推荐指数
1
解决办法
6404
查看次数

fragment 的 isAdded 方法返回 false,isAttached 返回 true

当我位于其中一个片段上时,我在活动中调用一个方法,然后返回我所在的同一个片段上的活动中的方法的结果,但令人惊讶的是,它给了我错误,说片段尚未添加。我分别打印 isAttached 和 isDetached 方法值及其 true 和 false。getContext 也返回 null。这怎么可能 ?

在调用方法之前,这些方法调用返回预期值。

Fragment.class
public class myFragment extends Fragment{
    @Override
    public void onDialogInteraction(String value) {
      super.onDialogInteraction(value);
      Log.d(TAG, "onDialogInteraction: value "+value);//prints correct value
      Log.d(TAG, "onDialogInteraction: iaAdded "+isAdded()); false
      Log.d(TAG, "onDialogInteraction: isAttahced "+isAttached());true
      Log.d(TAG, "onDialogInteraction: isDetached "+isDetached());false
      Log.d(TAG, "onDialogInteraction: isDetached "+getContext());null

    }
}

public class MyActivity extends AppcompatActivity{
     @Override
    protected void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
            String value = getValue(intent);
            myFragmentInstance.onDialogInteraction(value);
        }
}
Run Code Online (Sandbox Code Playgroud)

java android android-fragments android-fragmentactivity

5
推荐指数
0
解决办法
1260
查看次数

如何更改片段的状态栏颜色?

我有活动,我在用户触摸事件上使用五个片段.我想为3个片段设置状态栏颜色,而为其他两个片段设置状态栏颜色.

如果我在一个片段的onCreateView方法中使用下面的代码,它会更改活动的状态栏,并且我使用getActivity()方法获得所有片段的白色.所以我正在寻找片段的解决方案.

getActivity().getWindow.setStatusBatColor(Color.White); 
Run Code Online (Sandbox Code Playgroud)

我也尝试在style.xml中设置我的主题并在xml中应用fragemnts根布局,但它也不起作用.

styles.xml

<style name="StatusBarColor" parent="AppBaseTheme">
    <item name="android:statusBarColor">#F5F5F5
    </item>
</style>
Run Code Online (Sandbox Code Playgroud)

fragment1.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fab="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:theme="@style/StatusBarColor"
android:background="@color/home_bg_white"
tools:context="mycontext">
Run Code Online (Sandbox Code Playgroud)

提前谢谢你的帮助.

android android-theme android-fragments

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

onError 在 RxJava2 中未实现错误,即使它已实现

所以我有一个非常基本的 RxJava 观察者流工作流程,我从改造中请求一些东西,如果响应成功,我会烘烤成功的消息,如果出现错误,我会烘烤错误消息。

我下面提到的情况是错误情况,我期望来自 API 的错误消息,我将其转换为用户可读的单词并显示为Toast,如下所示,当我使用doOnNext这种doOnError方式时,它会因提到的错误而崩溃。

throwExceptionIfFailure还添加了方法,它显示了如何转换可读消息以及控制台指向错误的行。

registerNFCTag(body)
                .map(result -> throwExceptionIfFailure(result))
                .observeOn(AndroidSchedulers.mainThread())
                .doOnNext(result -> {
                  toggleLoaders(true);                        
                 appToast(getString(R.string.done_msg) + tagName);
                })
                .doOnError(throwable -> {
                    Toasty.error(this, throwable.getLocalizedMessage()).show();
                    toggleLoaders(true);
                })
                .subscribeOn(Schedulers.io())
                .subscribe();
Run Code Online (Sandbox Code Playgroud)

错误如果这还不够,我也可以发布堆栈跟踪。

java.lang.IllegalStateException: Exception thrown on Scheduler.Worker thread. Add `onError` handling.
Run Code Online (Sandbox Code Playgroud)

ThrowExceptionIfFailure 方法。

public <T> T throwExceptionIfFailure(T res) {

    Response result = (Response<?>) res;
    if (!result.isSuccessful()) {
        try {
            String msg = result.errorBody().string();
            Log.d(TAG, "throwExceptionIfFailure: "+msg);
            if (result.code() == 401 || result.code() == 403) …
Run Code Online (Sandbox Code Playgroud)

java error-handling android rx-android rx-java2

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

保留循环变量值的问题

我在这段代码中有一个错误,我已将公共类变量mCountryCode声明为String.

 for (mCountryCode : isoCountryCodes) {
     locale = new Locale("", mCountryCode);
     if(locale.getDisplayCountry().equals(mSpinner.getSelectedItem())) {
         mCountryCode = locale.getCountry();                        
         break;
     }
 }
Run Code Online (Sandbox Code Playgroud)

如果我使用,for (String mCountryCode : isoCountryCodes)那么错误将消失,但我无法维持行mCountryCode后的字符串值break;.

java android

0
推荐指数
1
解决办法
119
查看次数