小编Jin*_*Jin的帖子

Mercurial将书签移动到旧提交

我目前有这样的东西:

@  changeset:   4
|  bookmark:    A
|  bookmark:    B
|  tag:         tip
|
o  changeset:   3
|  -
|
o  changeset:   2
|  -
|
o  changeset:   1
|  bookmark:    master
Run Code Online (Sandbox Code Playgroud)

我想将书签A向下移动到更改集3并将书签B保留在当前HEAD中.我怎么能做到这一点?

version-control mercurial

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

Android NavigationView(材料支持库)不能正确地与状态栏交互

我正在按照这里的示例将新的Material Design Support库的NavigationView集成到我的应用程序中.

我的总体布局如下:

activity.xml

<android.support.v4.widget.DrawerLayout
    android:fitsSystemWindows="true">

    <!-- main content -->

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

</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)

的themes.xml

<style name="MyTheme" extends "Theme.AppCompat.Light.NoActionBar">
    <item name="android:statusBarColor">@android:color/transparent</item>
    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)

MyActivity.java

onCreate(..) {
    ..
    // This color can be different depending on some conditions.
    DrawerLayout.setStatusBarBackground(color);
}
Run Code Online (Sandbox Code Playgroud)

但是,我不断获得灰色状态栏,并且NavigationView不会在状态栏下绘制.我认为灰色状态栏是因为我没有colorPrimaryDark在主题中定义自定义attr.但是,我认为DrawerLayout.setStatusBarBackground会覆盖并设置状态栏颜色.我找不到太多关于新文档的文档NavigationView.有没有人有任何想法?

android android-support-library material-design android-design-library

17
推荐指数
2
解决办法
3332
查看次数

当mock()成功时,MockitoAnnotations.initMocks崩溃

我在仪器测试中使用@Mock注释时遇到了麻烦.

这是我的gradle依赖项:

androidTestCompile 'org.mockito:mockito-core:1.10.19'
androidTestCompile 'com.google.dexmaker:dexmaker:1.2'
androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.2'
Run Code Online (Sandbox Code Playgroud)

这是一段代码示例:

@Mock View mockView

@Before
public void setup() {
    MockitoAnnotation.initMocks(this);
    ...
}
Run Code Online (Sandbox Code Playgroud)

这与崩溃

java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Class java.lang.Object.getClass()' on a null object reference
at com.google.dexmaker.mockito.DexmakerMockMaker.getInvocationHandlerAdapter(DexmakerMockMaker.java:80)
at com.google.dexmaker.mockito.DexmakerMockMaker.getHandler(DexmakerMockMaker.java:75)
...
Run Code Online (Sandbox Code Playgroud)

但是,这有效

View mockView

@Before
public void setup() {
    mockView = Mockito.mock(View.class);
    ...
}
Run Code Online (Sandbox Code Playgroud)

任何人都有任何想法在这里发生了什么?

android mockito

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

当关闭过度滚动时,RecyclerView没有滚动条

我试图避免过度滚动阴影RecyclerView.然而,似乎添加android:overScrollMode="never"具有隐藏存在于其中的任何垂直和水平滚动条的副作用RecyclerView.有没有人知道如何在避免过度滚动阴影的同时显示滚动条?

android android-recyclerview

9
推荐指数
2
解决办法
2645
查看次数

在S3上压缩整个目录

如果我在S3上有一个包含约5000个小文件的目录,有没有办法轻松压缩整个目录并将生成的zip文件留在S3上?我需要这样做,而不必亲自手动访问每个文件.

谢谢!

amazon-s3 amazon-web-services s3cmd

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

未在设备上调用WearableListenerService onMessageReceived

我正试图从我的Android Wear应用程序向我的手机应用程序发送一条简单的消息Wearable.MessageApi.

这是我onConnected在Wear设备上从GoogleApiClient回调的.

final PendingResult<Status> status = Wearable.DataApi.addListener(googleApiClient, this);
status.setResultCallback(new ResultCallback<Status>() {
    @Override
    public void onResult(Status status) {
        if (!status.isSuccess()) {
            return;
        }

        NodeApi.GetConnectedNodesResult nodes =
                Wearable.NodeApi.getConnectedNodes(googleApiClient).await();
        for (Node node : nodes.getNodes()) {
            System.out.println("Sending message: " + node.getDisplayName());
            final MessageApi.SendMessageResult result =
                    Wearable.MessageApi.sendMessage(googleApiClient, node.getId(),
                            "request", "12345".getBytes())
                            .await();
            System.out.println("sent: " + result.getStatus().isSuccess());
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

运行时显示以下内容

Sending message: Nexus 6P
sent: true
Run Code Online (Sandbox Code Playgroud)

这是我在我的应用程序上的注册服务:

public class MyWearableListenerService extends WearableListenerService {

    @Override
    public void onMessageReceived(MessageEvent messageEvent) {
        Toast.makeText(this, "Received …
Run Code Online (Sandbox Code Playgroud)

android android-wear-data-api wear-os

6
推荐指数
2
解决办法
1551
查看次数

ANDROID:在SqliteDatabase中查找单个表的大小

我正在尝试按照以下方式进行操作:

SELECT bytes from user_segments where segment_name = 'TABLE_NAME';
Run Code Online (Sandbox Code Playgroud)

我知道我可以通过以下方式获得整个数据库的大小

mDb = SQLiteDatabase;
long size = new File(mDb.getPath()).length();
Run Code Online (Sandbox Code Playgroud)

是否有可能获得单个表在Android的SQLiteDatabase中占用的存储空间?

编辑 -

由于缺乏响应,我猜想SQLite无法实现。我目前正在使用一种hack-ish方式,其中我计算表中的行数并估计单行占用的空间(基于给定的表模式)。

sqlite size android

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

RecyclerView notifyItemRangeChanged不显示新数据

我遇到了RecyclerView#Adapter关于问题的问题notifyItemRangeChanged.似乎如果Adapter认为它具有0从最后一次调用的大小getItemCount,然后我调用Adapter#notifyItemRangeChanged(0, 1),Adapter则将简单地忽略该调用(例如,它不会导致插入新项目).

这是预期的行为吗?

android android-recyclerview

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

Lollipop 活动通过淡入淡出共享元素过渡

我正在尝试执行一个简单的共享元素转换,其中单击的列表项的一行转换为结果活动的顶部标题视图。我希望顶部标题视图占据列表项的位置,淡入淡出,然后转换到其最终位置。

这是sharedElementEnterTransition我为被调用的活动编写的简单代码:

<?xml version="1.0" encoding="utf-8"?>
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android">
    <fade android:fadingMode="fade_out" />
    <changeBounds />
    <changeTransform />
    <changeImageTransform />
</transitionSet>
Run Code Online (Sandbox Code Playgroud)

但是,fade过渡没有做任何事情。我看到结果视图突然在现场弹出然后转换到最终位置。

这是我开始活动的地方

view.setOnClickListener(view -> {
    final Intent intent = new Intent(...);
    view.setTransitionName("test");
    final ActivityOptions options = 
        ActivityOptions.makeSceneTransitionAnimation(activity, view, "test");
    startActivity(intent, options.toBundle());
});
Run Code Online (Sandbox Code Playgroud)

无法完全弄清楚发生了什么。任何人有任何想法?布局代码正是您所期望的android:transitionName="test"

android android-transitions

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

在jsp中通过java访问javascript

我的代码目前看起来像这样

<%
    if (request != null) {
        bustOut;
    }
%>

<script language="javascript">
function bustOut(){
   var newWin = window.open("the real url", "subWindow","height=500,width=700,resizable=yes,scrollbars=yes"); 
}
</script>
Run Code Online (Sandbox Code Playgroud)

如何调用Java代码中的javascript函数?或者那是不可能的?

javascript java jsp

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