我想在我的项目中使用新的Design TabLayout.我希望布局适应每个屏幕尺寸和方向,但可以在一个方向上正确看到.
我正在处理重力和模式设置我的tabLayout为:
tabLayout.setTabGravity(TabLayout.GRAVITY_CENTER);
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
Run Code Online (Sandbox Code Playgroud)
所以我希望如果没有空间,tabLayout是可滚动的,但是如果有空间,它就会居中.
从指南:
public static final int GRAVITY_CENTER Gravity用于布置TabLayout中心的选项卡.
public static final int GRAVITY_FILL Gravity用于尽可能多地填充TabLayout.此选项仅在与MODE_FIXED一起使用时生效.
public static final int MODE_FIXED固定选项卡同时显示所有选项卡,最适用于受益于选项卡之间快速枢轴的内容.选项卡的最大数量受视图宽度的限制.固定标签的宽度相等,基于最宽的标签标签.
public static final int MODE_SCROLLABLE可滚动选项卡在任何给定时刻显示选项卡的子集,并且可以包含更长的选项卡标签和更多数量的选项卡.当用户不需要直接比较标签标签时,它们最适合用于浏览触摸界面中的上下文.
所以GRAVITY_FILL只与MODE_FIXED兼容但是,at没有为GRAVITY_CENTER指定任何内容,我希望它与MODE_SCROLLABLE兼容,但这是我使用GRAVITY_CENTER和MODE_SCROLLABLE
因此它在两个方向都使用SCROLLABLE,但它没有使用GRAVITY_CENTER.
这就是我对景观的期望; 但要拥有这个,我需要设置MODE_FIXED,所以我得到的是肖像:
如果tabLayout适合屏幕,为什么GRAVITY_CENTER不能用于SCROLLABLE?有没有办法动态设置重力和模式(并看看我期待什么)?
非常感谢你!
编辑:这是我的TabLayout的布局:
<android.support.design.widget.TabLayout
android:id="@+id/sliding_tabs"
android:layout_width="match_parent"
android:background="@color/orange_pager"
android:layout_height="wrap_content" />
Run Code Online (Sandbox Code Playgroud) I am updating my app to Navigation Architecture Components and I see that it has a lag replacing fragments which is visible in the NavigationDrawer that does not close smoothly.
Until now, I was following this approach:
https://vikrammnit.wordpress.com/2016/03/28/facing-navigation-drawer-item-onclick-lag/
所以我导航onDrawerClosed
而不是进入onNavigationItemSelected
以避免故障。
这是一个非常普遍的问题,但它又回来了。使用导航组件,它再次滞后,我没有看到在onDrawerClosed
.
这些是导航组件之前的一些旧答案
DrawerLayout 的项目点击 - 什么时候更换片段合适?
非常感谢。
android navigation-drawer navigationview android-architecture-navigation
我在我的应用程序中使用应用程序索引,但有时它无法正确接收来自Chrome的意图.
如果我从我的生产网站打开链接,它将由chrome打开.所以我创建了一个具有相同代码的测试站点.但是,在这种情况下,我的应用正确打开深层链接.
我找不到任何解释,因为它在网络中使用相同的代码(但在不同的网站中)和相同的Android应用程序.
这是我的意图过滤器:
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="https" android:host="soriabus-web.appspot.com" android:pathPrefix="/" />
</intent-filter>
Run Code Online (Sandbox Code Playgroud)
这是我的按钮中的html代码:
<a href="https://soriabus-web.appspot.com/parada/1/plaza-mariano-granados/true"
"type="button"
role="button"
class="btn btn-primary">
Abrir Soria Bus
</a>
Run Code Online (Sandbox Code Playgroud)
如果我打开此地址(制作)中的链接,则会打开Play商店(链接的末尾是重定向到Google Play):
https://soriabus-web.appspot.com/parada/1/plaza-mariano-granados
如果我在这个其他地址(测试)中打开链接,它会打开我的app correclty:
https://central-splice-128620.appspot.com/parada/1/plaza-mariano-granados
我不明白为什么链接处理不同.谢谢.
编辑:
是因为我正在关注同一网站内的链接吗?
https://soriabus-web.appspot.com/parada/1/plaza-mariano-granados => https://soriabus-web.appspot.com/parada/1/plaza-mariano-granados/playstore
android deep-linking intentfilter android-app-indexing firebase-app-indexing
我正在尝试将华为地图套件用于不包含 Google Play 服务的新设备。Codelab 演示位于:
https://developer.huawei.com/consumer/en/codelab/HMSMapKit/index.html#7
我没有更改演示的任何一行代码,该应用程序已自动下载华为移动服务版本3.0.3.300。
但是,地图仍然没有出现。
你遇到过同样的问题吗?
我收到此日志:
01-26 14:24:34.265 19265-19265/com.wz.android.mapdemo W/DynamicModule: Failed to load remote module.
01-26 14:24:34.256 19265-19265/com.wz.android.mapdemo D/HmsMapKit_MapView_183: onStart
01-26 14:24:34.257 19265-19265/com.wz.android.mapdemo I/HmsMapKit_MapCreator_48: Making Createor dynamically
01-26 14:24:34.257 19265-19265/com.wz.android.mapdemo I/DynamicModule: Local module huawei_module_maps:0
01-26 14:24:34.257 19265-19265/com.wz.android.mapdemo I/DynamicModule: Remote module huawei_module_maps:-100
01-26 14:24:34.259 19265-19265/com.wz.android.mapdemo W/DynamicModule: Failed to load remote module.
com.huawei.hms.feature.dynamic.DynamicModule$LoadingException: f*i*e* *o*l*a* *o*u*e
at com.huawei.hms.feature.dynamic.DynamicModule.a(Unknown Source)
at com.huawei.hms.feature.dynamic.DynamicModule.a(Unknown Source)
at com.huawei.hms.feature.dynamic.DynamicModule.load(Unknown Source)
at com.huawei.hms.maps.internal.MapCreator.getRemoteContext(MapCreator.java:97)
at com.huawei.hms.maps.internal.MapCreator.getRemoteMapContext(MapCreator.java:85)
at com.huawei.hms.maps.internal.MapCreator.getCreator(MapCreator.java:50)
at com.huawei.hms.maps.MapView$MapViewDeferredLifecycleHelper.createDelegate(MapView.java:241)
at com.huawei.hms.feature.dynamic.DeferredLifecycleHelper.a(Unknown Source)
at com.huawei.hms.feature.dynamic.DeferredLifecycleHelper.onStart(Unknown …
Run Code Online (Sandbox Code Playgroud) 我正在开发我的Android Wear应用程序,我无法使用 setEnableGestureNavigation
我使用的是WearableListView
从com.google.android.support:wearable:1.3.0
我可以使用WearableListView的任何方法但是setEnableGestureNavigation()是不可用的.但是,它可以在文档中找到:
我在我的应用中使用了Google Analytics(分析),而且工作正常.但是,如果我每天有100个活跃用户,然后我发送通知,则我将1000个连接用户的峰值计为"活动".
我不知道是否有一种简单的方法可以防止这些用户被视为活动用户.他们中的大多数人不会打开通知,我不希望他们算作活动.我想只计算打开应用程序的用户,而不是所有收到通知的用户.
我在发送的通知中使用"body"字段,并在应用程序中创建自定义通知.
是否可以删除这些"活跃"用户?
非常感谢你!
我正在使用谷歌分析,我已经看到云测试实验室中的所有设备被检测为"活跃用户"和"新用户"(这是有道理的).有没有办法检测到这个并且不计算它们?
我发现它们在Google Play中不算作安装,因此我预计Google Analytics会采用相同的行为.
可以通过使用不同的跟踪ID将不同版本上传到Alpha/Beta和Production来避免这种情况,但如果将相同的Apk从Alpha/Beta升级到Production,则Cloud Test Lab功能会更强大.
我正在开发一个appengine项目并使用Google Datastore存储我的数据.我使用不同的数据存储库,因为它们是示例中使用的,但我觉得有点奇怪,我必须使用它们:
如果我检查用于查询的文档,在此示例中,他们使用此库来处理查询:
的列举
https://cloud.google.com/appengine/docs/java/datastore/retrieving-query-results
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService(); PreparedQuery pq = datastore.prepare(q); 实体结果= pq.asSingleEntity();
但是,在这个例子中存储数据,他们使用
com.google.cloud.datastore
https://cloud.google.com/datastore/docs/concepts/entities
实体任务= Entity.builder(taskKey).set("category","Personal").set("done",false).set("priority",4).set("description","Learn Cloud Datastore" ).build();
现在我可以使用两者,但我想知道哪一个更好用于哪种目的,或者它们是否只是具有不同包的相同库.但是,我正在寻找一种方法来删除其中一个.
我正在开发一个应用程序引擎项目并使用 Google Datastore 存储我的数据。我想调试它,但我仍然有例外java.lang.IllegalArgumentException: projectId must match the following pattern: ([a-z\\d\\-]{1,100}~)?([a-z\\d][a-z\\d\\-\\.]{0,99}:)?([a-z\\d][a-z\\d\\-]{0,99})
我能够调试我的 appengine 项目,并且可以部署它并将数据正确存储在 Google Datastore 中。
\n\n为了进行调试,我遵循了数据存储模拟器的说明:
\n\nhttps://cloud.google.com/datastore/docs/tools/datastore-emulator
\n\n我已经安装了 Google Cloud SDK,并使用我的项目 id 的默认值正确启动它(并且我还尝试通过命令行设置我自己的项目 id)。
\n\n这是我在 gcloud 中执行的命令:
\n\n\ngcloud beta 模拟器数据存储启动 --project="my-project-name"
\n\n警告:重用 [C:\\gcloud\\emulators\\datastore] 中的现有数据。\n 执行:cmd /c\n C:\\google-cloud-sdk\\platform\\cloud-datastore-emulator\\ cloud_datastore_emulator.cmd\n start --host=localhost --port=8806 --store_on_disk=True\n --consistency=0.9 --allow_remote_shutdown C:\\gcloud\\emulators\\datastore [数据存储] 2016 年 11 月 27 日 5 :08:17 PM\n com.google.cloud.datastore.emulator.CloudDatastore$FakeDatastoreAction$7\n 应用 [数据存储区] INFORMACI?N:提供了 --allow_remote_shutdown 来\n 不再需要的启动命令。[数据存储区] 2016 年 11 月 27 日\n 5:08:17 …
java debugging google-app-engine datastore google-cloud-datastore
android ×7
datastore ×2
java ×2
android-architecture-navigation ×1
debugging ×1
deep-linking ×1
dictionary ×1
firebase ×1
gravity ×1
intentfilter ×1
wear-os ×1