小编qwe*_*rtz的帖子

如何模拟地图应用中的底部工作表?

任何人都可以告诉我如何在iOS 10中的新地图应用程序中模仿底页?

在Android中,您可以使用BottomSheet模仿此行为的模式,但我找不到类似iOS的内容.

这是一个带有内容插入的简单滚动视图,以便搜索栏位于底部吗?

我对iOS编程很新,所以如果有人可以帮助我创建这个布局,那将非常感激.

这就是我所说的"底页":

地图中折叠的底部工作表的屏幕截图

地图中展开的底部工作表的屏幕截图

uiscrollview uiview mapkit ios swift

179
推荐指数
6
解决办法
7万
查看次数

Android涟漪背景颜色

我在导航抽屉上使用了涟漪效果.我已经像这样设置并将其应用到我的ListView:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_activated="true" android:drawable="@color/black_200" />

    <item android:state_pressed="true" android:color="@color/black_200">
        <ripple android:color="@color/black_400" />
    </item>

    <item android:drawable="@color/white" />
</selector>
Run Code Online (Sandbox Code Playgroud)

我希望纹波背景与正常激活状态保持一致.即使我将颜色定义为与激活状态相同,它也会变暗,并且波纹气泡会变得更暗.如何将背景颜色设置为相同,如激活状态和波纹气泡是我告诉它的颜色?

android android-listview android-activity navigation-drawer rippledrawable

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

Snackbar动作文本颜色不变

我想更改我的零食栏的动作文字颜色,但由于某种原因它不起作用.

我使用以下代码显示快餐栏:

Snackbar.make(findViewById(R.id.root), "text", Snackbar.LENGTH_LONG).setActionTextColor(R.color.yellow).setAction("OK", new View.OnClickListener() {
    @Override
    public void onClick(View view) {
    }
}).show();
Run Code Online (Sandbox Code Playgroud)

android colors android-design-library android-snackbar androiddesignsupport

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

Android maps utils群集图标颜色

有没有方法可以更改群集项的背景颜色?(显示标记计数的那个,如100 +,200 + ......).我试着查看ClusterManager的源代码,但找不到任何改变颜色的选项,但也许有人知道如何做到这一点.我基本上想要"物化"那些颜色.

android google-maps google-maps-markers markerclusterer

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

Android设计支持TabLayout重叠内容

我正在使用设计支持库中引入的新TabLayout.我有这样的代码:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="match_parent"
    android:layout_width="match_parent">

    <android.support.design.widget.CoordinatorLayout
        android:id="@+id/lines_coordinator"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <android.support.design.widget.AppBarLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

            <android.support.design.widget.TabLayout
                android:id="@+id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:elevation="4dp"/>

        </android.support.design.widget.AppBarLayout>

        <android.support.v4.view.ViewPager
            android:id="@+id/viewpager"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />

    </android.support.design.widget.CoordinatorLayout>

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

问题是,标签与片段显示的内容的顶部重叠.我怎样才能解决这个问题?我正在使用像Github上的示例中的TabLayout,所以我相信我的代码没有问题.我已经有了一个工具栏,因为我使用导航抽屉中的片段中的选项卡,所以我从AppBarLayout中删除了它.

layout tabs android android-toolbar androiddesignsupport

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

Android流行动画

我在我的应用程序中设置了一个浮动操作按钮,我希望它可以弹出,在那里它是不可见的,并开始增长到60dp的大小,然后调整回到正常大小56dp.怎么办?我知道如何做一个正常的动画淡入淡出,但不是流行音乐.

android button android-animation android-activity

11
推荐指数
2
解决办法
9595
查看次数

Android Maps Utils Clustering显示InfoWindow

我打算使用utils库中提供的谷歌地图标记聚类,但谷歌示例应用程序只显示没有任何infoWindow的标记聚类.我现在想知道,我不能展示InfoWindow吗?我希望InfoWindow显示在标记上,就像使用普通的谷歌地图标记一样,而不是在群集上.

我的代码:(来自谷歌的例子)

public class BigClusteringDemoActivity extends FragmentActivity {
    private ClusterManager<MyItem> mClusterManager;
    private GoogleMap mMap;

    private void readItems() {
        InputStream inputStream = getResources().openRawResource(R.raw.radar_search);
        List<MyItem> items = new MyItemReader().read(inputStream);

        for (int i = 0; i < 10; i++) {
            double offset = i / 60d;
            for (MyItem item : items) {
                LatLng position = item.getPosition();
                double lat = position.latitude + offset;
                double lng = position.longitude + offset;
                MyItem offsetItem = new MyItem(lat, lng);
                mClusterManager.addItem(offsetItem);
            }
        }
    }

    @Override
    public void onCreate(Bundle savedInstanceState) …
Run Code Online (Sandbox Code Playgroud)

android google-maps infowindow google-maps-markers

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

从android支持设计导航抽屉中删除滚动条?

我刚刚将支持设计库从22.2.1更新到23.0.1,并立即注意到导航抽屉中存在滚动条.我试着用

android:scrollbars="none"
Run Code Online (Sandbox Code Playgroud)

但这并没有解决它.有没有其他方法可以删除滚动条?

android scrollbar navigation-drawer drawerlayout androiddesignsupport

11
推荐指数
2
解决办法
5789
查看次数

使用setPeriodic()时,Android JobScheduler经常运行

我注意到我的预定JobScheduler经常执行工作方式.我有它设置每日执行,它需要被闲置,是对WLAN和被充电,但是当这些条件得到满足的作业执行像每一个10分钟,甚至更频繁.

我的代码:

JobInfo.Builder builder = new JobInfo.Builder(1,
                    new ComponentName(context.getPackageName(), SyncJobService.class.getName()));


builder.setPeriodic(TimeUnit.DAYS.toMillis(1))
        .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
        .setRequiresCharging(true)
        .setRequiresDeviceIdle(true);

int code = jobScheduler.schedule(builder.build());
if (code <= 0) {
    Log.e(TAG, "Could not scheduled job: " + code);
    return;
}

Log.e(TAG, "Scheduled job");
Run Code Online (Sandbox Code Playgroud)

该作业执行后台线程从互联网下载数据,完成数据下载后,我打电话

mService.jobFinished(mParams, true);
Run Code Online (Sandbox Code Playgroud)

通知作业调度程序作业已完成,并应重新计划.即使这段时间设定为一天,工作怎么经常执行?我的android 6.0.1设备几乎从不进入打盹模式,因为工作经常运行.

android synchronization milliseconds job-scheduling android-wifi

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

Firebase Cloud Messaging未调用FirebaseInstanceId

我只是根据本指南更新GCM向FCM 这里.该网站说,一旦生成令牌,我将调用扩展FirebaseInstanceIdService的服务.出于某种原因,我的服务永远不会被调用,onTokenRefresh永远不会执行.

根据指南,我的服务是这样注册的:

<service android:name=".fcm.FcmService">
    <intent-filter>
        <action android:name="com.google.firebase.MESSAGING_EVENT"/>
    </intent-filter>
</service>

<service android:name=".fcm.InstanceIdService">
    <intent-filter>
        <action android:name="com.google.firebase.INSTANCEID_EVENT"/>
    </intent-filter>
</service>
Run Code Online (Sandbox Code Playgroud)

我的服务:

public class InstanceIdService extends FirebaseInstanceIdService {

    private static final String TAG = "InstanceIdService";

    @Override
    public void onTokenRefresh() {
        String token = FirebaseInstanceId.getInstance().getToken();

        Log.e(TAG, "Got token: " + token);
    }
}
Run Code Online (Sandbox Code Playgroud)

LogCat没有说明丢失配置文件或其他任何内容,我可以看到有关FirebaseApp的日志和提及令牌的日志条目,但我的服务仍然没有被调用.

我是否需要在我的活动中的某个地方启动此服务?难道我做错了什么?有人可以指导我正确的方向吗?

编辑:使用Log.e("TOKEN", "Token: " + FirebaseInstanceId.getInstance().getToken());正确打印我的令牌,这意味着它已成功生成.该服务仍未被调用...

编辑2:将INSTANCEID_EVENT更改为INSTANCE_ID_EVENT修复了问题,但我不得不重新安装该应用程序.由于我已经发布了包含新FCM的测试版,我的beta版测试人员将无法订阅主题以显示传入的消息.那我该怎么解决呢?

android firebase google-cloud-messaging

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