小编Mar*_*cel的帖子

Android支持工具栏+ ActionBarDrawerToggle不更改为箭头

我正在努力工作的工具栏和抽屉.我正在尝试将汉堡切换为箭头,当我向后台堆叠添加新片段但是没有办法做到这一点.

也许我错过了一些东西,但我找不到办法.有人有同样的问题吗?

这是声明:

mDrawerToggle = new ActionBarDrawerToggle(
            getActivityCompat(),                    /* host Activity */
            mDrawerLayout,                    /* DrawerLayout object */
            ((BaseActivity) getActivityCompat()).getToolbar(),
            R.string.navigation_drawer_open,  /* "open drawer" description for accessibility */
            R.string.navigation_drawer_close  /* "close drawer" description for accessibility */
    )
Run Code Online (Sandbox Code Playgroud)

这是我将一个片段添加到后栈时调用的函数

public void setToggleState(boolean isEnabled) {
    if (mDrawerLayout == null)
        return;

    if (isEnabled) {
        mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED);
        mDrawerToggle.onDrawerStateChanged(DrawerLayout.LOCK_MODE_UNLOCKED);
    } else {
        mDrawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
        mDrawerToggle.onDrawerStateChanged(DrawerLayout.LOCK_MODE_LOCKED_CLOSED);
    }
    mDrawerToggle.syncState();
}
Run Code Online (Sandbox Code Playgroud)

android toolbar navigation-drawer drawertoggle

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

LeakCanary报告在InputMethodManager中泄漏

我试图弄清楚我的应用程序中的泄漏,但我不确定这是来自.

LeakCanary告诉我,我可以忽略它.是对的吗?

01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * LEAK CAN BE IGNORED.
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * com.mypackage.ui.map.MapComponentFragment has leaked:
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * GC ROOT android.view.inputmethod.InputMethodManager$1.this$0 (anonymous class extends com.android.internal.view.IInputMethodClient$Stub)
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * references android.view.inputmethod.InputMethodManager.mCurRootView
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * references com.android.internal.policy.impl.PhoneWindow$DecorView.mContext
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * references com.mypackage.ui.MainActivity.mFragments
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * references android.app.FragmentManagerImpl.mAdded
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * references java.util.ArrayList.array
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * references array java.lang.Object[].[0]
01-06 12:04:56.580 6935-9159/com.mypackage D/LeakCanary: * leaks …
Run Code Online (Sandbox Code Playgroud)

android leakcanary

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

在onTaskRemoved之后再次创建服务

我做了一个远程服务,这个服务是在第一次启动时由我的活动启动的,之后,活动总是查看服务是否已启动以避免再次启动它.

该服务在onCreate函数中运行一些方法.此服务始终在运行并在启动时启动.

问题(不是一个大问题,但我想知道为什么)是一旦创建服务,如果我停止我的活动调用onTaskRemoved,这是正确的,但几秒后再次调用oncreate方法,服务启动再次.

知道为什么吗?我该如何控制呢?

<service
        android:name=".Service"
        android:icon="@drawable/ic_launcher"
        android:label="@string/service_name"
        android:process=":update_process" >
</service>
Run Code Online (Sandbox Code Playgroud)

AndroidManifest.xml中

if (!isRunning()) {
    Intent service = new Intent(this, UpdateService.class);
    startService(service);
} else {
    //Just to debug, comment it later
    Toast.makeText(this, "Service was running", Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)

如果服务未运行,则启动该服务

service android android-activity

5
推荐指数
2
解决办法
7054
查看次数

Android Select文本工具栏选项颜色问题

当您选择文本时,出现栏出现问题

在此处输入图片说明

我正在使用最新版本的Appcompat v7库。这是我的主题主张:

<style name="AppTheme.Base" parent="Theme.AppCompat.Light">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>

    <item name="colorControlNormal">@color/material_blue_grey_800</item>
    <item name="colorControlActivated">@color/colorAccent</item>
    <item name="colorControlHighlight">@color/colorPrimary</item>

    <item name="android:windowNoTitle">true</item>
    <item name="windowActionBar">false</item>

    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
    <item name="vpiTabPageIndicatorStyle">@style/TabStyle</item>

    <item name="android:textAppearanceButton">@style/AppTheme.ButtonTextAppearance</item>
    <item name="android:textViewStyle">@style/MyTextViewStyle</item>
</style>

<style name="MyTextViewStyle" parent="android:Widget.TextView">
    <item name="android:textColor">@color/text</item>
    <item name="android:textColorLink">@color/colorPrimary</item>
</style>

<style name="AppTheme.ButtonTextAppearance" parent="@style/Base.TextAppearance.AppCompat.Button">
    <item name="textAllCaps">false</item>
    <item name="android:textAllCaps">false</item>
</style>
Run Code Online (Sandbox Code Playgroud)

没有一种颜色是白色的,所以我真的不知道这种白色条形颜色和白色图标的含义。

有什么线索吗?

android colors toolbar android-appcompat

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

RxJava +改造,获取List并为每个项目添加额外信息

我正在玩RXJava,在Android中进行改造.我正在努力完成以下任务:

我需要定期轮询一个给我一个Observable的调用>(从这里我可以做到)

一旦我得到这个列表,我想迭代每个交付,并调用另一个方法,将给我ETA(所以只是更多信息)我想将这个新信息附加到交付,并返回完整列表与附加的额外信息每个物品.

一旦得到列表,我知道如何在没有rxjava的情况下做到这一点,但我想练习.

到目前为止这是我的代码:

pollDeliveries = Observable.interval(POLLING_INTERVAL, TimeUnit.SECONDS, Schedulers.from(AsyncTask.THREAD_POOL_EXECUTOR))
            .map(tick -> RestClient.getInstance().getApiService().getDeliveries())
                    .doOnError(err -> Log.e("MPB", "Error retrieving messages" + err))
                    .retry()
                    .subscribe(deliveries -> {
                        MainApp.getEventBus().postSticky(deliveries);
                    });
Run Code Online (Sandbox Code Playgroud)

这给了我一份交货清单.现在我想完成第二部分.

希望我足够清楚.谢谢

android polling observable rx-java retrofit

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

如何使用来自谷歌助手的“actions.intent.OPEN_APP_FEATURE”应用操作?

您将如何通过 Google 助理实现 actions.intent.OPEN_APP_FEATURE 操作?

文档缺少示例。

android android-intent google-assistant-sdk app-actions

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

Google Maps v2居中并转动相机位置以适合两个标记

我正在努力如何使用相机移动以适应我的两个标记,并将它们保持在同一水平.因此,这意味着修改缩放以适应它们并转动相机以适合同一行上的标记.

接下来的两张照片将澄清我的问题:

当前状态期望的状态

那么,到目前为止我所做的是:

public void centerIncidentRouteOnMap(List<LatLng> copiedPoints) {
        double minLat = Integer.MAX_VALUE;
        double maxLat = Integer.MIN_VALUE;
        double minLon = Integer.MAX_VALUE;
        double maxLon = Integer.MIN_VALUE;
        for (LatLng point : copiedPoints) {
            maxLat = Math.max(point.latitude, maxLat);
            minLat = Math.min(point.latitude, minLat);
            maxLon = Math.max(point.longitude, maxLon);
            minLon = Math.min(point.longitude, minLon);
        }
        final LatLngBounds bounds = new LatLngBounds.Builder().include(new LatLng(maxLat, maxLon)).include(new LatLng(minLat, minLon)).build();
        mMap.animateCamera(CameraUpdateFactory.newLatLngBounds(bounds, 120));
}
Run Code Online (Sandbox Code Playgroud)

但这只会使两个标记适合屏幕,所以我需要知道如何以正确的角度旋转相机以获得最后一张照片.

谁可以帮我这个事?

谢谢!

camera android google-maps google-maps-markers

3
推荐指数
2
解决办法
4979
查看次数

Dagger 2活动注射不起作用

我正在尝试新的匕首2,这是我第一次实施它,但我不能让它工作.我想我得到了这个概念,我理解这里的例子

我尝试复制相同的结构只是为我的例子稍作修改.

这是扩展Graph的AppComponent,我定义了我想要的类.

@ApplicationScope
@Component(modules = {AppModule.class, DataModule.class})
public interface EFAppComponent extends EFGraph {

    /**
     * An initializer that creates the graph from an application.
     */
    public final static class Initializer {

        private Initializer() {
        } // No instances.

        public static EFAppComponent init(EFApp app) {
            return Dagger_EFAppComponent.builder()
                    .appModule(new AppModule(app))
                    .build();
        }
    }
}


public interface EFGraph {

    public void inject(EFApp app);

    public ImageLoader imageLoader();

    public EventBus eventBus();

}
Run Code Online (Sandbox Code Playgroud)

然后在每个模块中我提供相应的类.从这里一切都很好,Dagger接缝正确构建Dagger_EFAppComponent.

然后在Application类中使用构造函数初始化

component = EFAppComponent.Initializer.init(this);
component.inject(this);
Run Code Online (Sandbox Code Playgroud)

然后我的目标是在我的活动中注入ImageLoader和EventBus.为此,我创建了一个ActivityComponent.

@ActivityScope
@Component(
        dependencies …
Run Code Online (Sandbox Code Playgroud)

java android dependency-injection dagger-2

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

GSON解析数组中的数组

我遇到这个问题,从API我得到一个带有一个名为coordinates的对象的扩展JSON,这个对象是一个包含数组o数组的数组.

要更清楚地看一下这个例子:

"coordinates": [
                [
                    [
                        -0.087118,
                        51.508823
                    ]
Run Code Online (Sandbox Code Playgroud)

或者在这张照片中,您可以更好地看到它

或者在这张照片中,您可以更好地看到它

所以现在我正在尝试使用GSON解析它而我并没有成功.任何人都可以给我一个如何为此创建类的想法?

谢谢

parsing android json exception gson

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