小编And*_*ast的帖子

在Android Studio中创建aar文件

我想在Android Studio中为我的库创建一个aar文件,我会选择jar选项,但我的库有资源.

知道如何从库中创建aar文件吗?

android jar android-studio aar

159
推荐指数
5
解决办法
12万
查看次数

EditText在text属性下面加下划线

我想改变编辑文本下面的蓝色,我不知道它是什么属性.

我尝试使用不同的背景颜色,但它不起作用.

我在下面附上了一张图片:

在此输入图像描述

android login android-edittext

103
推荐指数
9
解决办法
15万
查看次数

Android上TextView中的多个可点击链接

我想添加多个链接以类似于谷歌与Flipboard的下面已经与他们做一个TextView 条款和条件隐私政策在下面的屏幕截图所示:

到目前为止,我偶然发现了使用这种方法

textView.setText(Html.fromHtml(myHtml); textView.setMovementMethod(LinkMovementMethod.getInstance());

其中myHtml是一个href.

但它并没有给我控制我需要例如发射片段等.

知道如何在下面的两个例子中实现这一点吗?

Flipboard条款和条件视图

谷歌条款和条件查看

java android textview android-layout

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

在Android上使用Dagger 2进行懒惰注射

我是Dagger 2的新手.我有这个场景,我不想在我的应用程序中注入一个对象(在演示者中,在api中)

我最初没办法提供它.在我的应用程序的某个阶段进行身份验证之后才会创建它.

来自文档http://google.github.io/dagger/

我看到Lazy加载可能是一种解决这个问题的方法,例如

@Inject 
Lazy<Grinder> lazyGrinder;
Run Code Online (Sandbox Code Playgroud)

然后使用以下方法获取这样的值:lazyGrinder.get().grind();

我的问题是:

  • 我可以安全地用新的对象交换对象吗?
  • 有没有其他推荐的方法来做到这一点?

谢谢

android dependency-injection lazy-initialization dagger-2

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

在Jenkins上运行android单元测试和仪器测试(Gradle)

我的androidTest文件夹中有一些单元和仪器测试.

我正试图在我当地的Jenkins上运行这些测试.

我已经使用Jenkins成功配置了我的项目,并且我还为仪器测试创建了一个模拟器.

到目前为止,我所看到的所有资源都只关注蚂蚁和早期版本的Gradle.编写任务的语法在当前版本中略有变化,我对此感到困惑.

这是我的build.gradle文件:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "myPackageName"
        minSdkVersion 16
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}


dependencies {
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.google.android.gms:play-services:6.5.87'
}
Run Code Online (Sandbox Code Playgroud)

android unit-testing gradle jenkins android-gradle-plugin

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

单击Robotium中的操作栏菜单项

我正在尝试在Robotium中运行一些自动化测试.我的应用程序中有以下代码,用于设置选项菜单:

  public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
    com.actionbarsherlock.view.MenuInflater inflater = getSupportMenuInflater();
        inflater.inflate(R.layout.logoutmenu, menu);
        return super.onCreateOptionsMenu(menu);
   }
Run Code Online (Sandbox Code Playgroud)

我尝试使用代码单击Robotium中的菜单:

solo.sendKey(Solo.MENU);
solo.clickOnView(solo.getView(R.id.share)); //share is the id of the menu item
Run Code Online (Sandbox Code Playgroud)

但是我的测试因错误而失败:

View is null and therefore cannot be clicked.
Run Code Online (Sandbox Code Playgroud)

我也尝试使用下面的代码也失败了:

solo.clickOnView(solo.getView(R.id.logoutmenu));
solo.clickOnMenuItem("Share My Artists"); 
Run Code Online (Sandbox Code Playgroud)

android robotium actionbarsherlock

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

将边距添加到Snackbar视图

我正在更新我当前的应用程序以使用零食栏,在Google规范中它们显示了各种使用它们的方法http://www.google.com/design/spec/components/snackbars-toasts.html#snackbars-toasts-specs

例A:

有保证金的小吃吧

例B:

Snackbar固定在布局上

这是我的代码atm:

Snackbar snackbar = Snackbar.make(mParentLayout, displayMessage,     
    Snackbar.LENGTH_LONG);
    snackbar.setAction(actionMessage, mClickListener);
    snackbar.show();
Run Code Online (Sandbox Code Playgroud)

我在例B中得到了结果,

我该如何添加保证金?

android android-layout android-snackbar

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

RecyclerView LinearLayout管理器始终在横向模式下返回-1 - findLastCompletelyVisibleItemPosition()

findLastCompletelyVisibleItemPosition()用来确定我的RecyclerView中的最后一个可见项目.

这是我如何设置布局的代码片段:

    mRecyclerView.setHasFixedSize(true);
    LinearLayoutManager mLayoutManager = new LinearLayoutManager(getContext());
    mRecyclerView.setLayoutManager(mLayoutManager);
Run Code Online (Sandbox Code Playgroud)

布局XML:

<android.support.v4.widget.SwipeRefreshLayout  xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/swipe_container"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/message_list"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/white"
        android:paddingBottom="@dimen/footer_progress_bar"
        android:paddingTop="16dp"
        android:scrollbars="vertical" />

    <ProgressBar
        android:id="@+id/progress_bar"
        android:layout_width="50dp"
        android:layout_height="50dp"
        android:layout_gravity="center"
        android:visibility="gone" />

    <ProgressBar
        android:id="@+id/footer_progress_bar"
        android:layout_width="@dimen/footer_progress_bar"
        android:layout_height="@dimen/footer_progress_bar"
        android:layout_gravity="center|bottom"
        android:visibility="gone" />

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

在纵向模式下,此工作正常,并始终返回正确的位置.

但是在横向模式下,返回的位置始终为-1.

我的问题是:

有谁知道为什么会这样?

我怎样才能覆盖它以返回正确的位置?

或者任何人都可以推荐另一种解决方案来获得最后一个项目在景观中的正确位置?

android android-layout android-recyclerview linearlayoutmanager

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

使用Parse.com登录Facebook时出现NoClassDefFoundError

我目前正在使用parse.com作为我的Android应用程序的后端解决方案.我正在尝试使用Facebook对用户进行身份验证,我目前正在遇到以下错误.我试图将JARS(Parse和Facebook)添加到我的项目中.我也多次清理过我的项目但仍然遇到以下错误:

错误日志:

03-03 15:01:18.273: E/dalvikvm(7423): Could not find class 'com.facebook.SharedPreferencesTokenCachingStrategy', referenced from method com.parse.auth.FacebookAuthenticationProvider.authenticate
03-03 15:01:18.273: W/dalvikvm(7423): VFY: unable to resolve new-instance 1011 (Lcom/facebook/SharedPreferencesTokenCachingStrategy;) in Lcom/parse/auth/FacebookAuthenticationProvider;
03-03 15:01:18.277: D/dalvikvm(7423): VFY: replacing opcode 0x22 at 0x0033
03-03 15:01:18.277: E/dalvikvm(7423): Could not find class 'com.facebook.SharedPreferencesTokenCachingStrategy', referenced from method com.parse.auth.FacebookAuthenticationProvider.restoreAuthentication
03-03 15:01:18.277: W/dalvikvm(7423): VFY: unable to resolve new-instance 1011 (Lcom/facebook/SharedPreferencesTokenCachingStrategy;) in Lcom/parse/auth/FacebookAuthenticationProvider;
03-03 15:01:18.277: D/dalvikvm(7423): VFY: replacing opcode 0x22 at 0x003b
03-03 15:01:18.277: D/dalvikvm(7423): DexOpt: unable to opt direct call 0x21d7 at 0x35 …
Run Code Online (Sandbox Code Playgroud)

android facebook parse-platform

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

解析嵌套的JSON以检索嵌套的数组值

我想从这个Json中得到一些特定的字段.我已经设法检索第一级中的那些但我需要从数据字段中获取一些.我想获得以下数据字段的数组:

data = [(data artist id, data artist id name, and data rank), (data artist id, data artist id name, and data rank)...] 
Run Code Online (Sandbox Code Playgroud)

例如:

data = [(ed61fe981f9143fe82536a0e5e9836f7, Rihanna, 1), (668dfb9383684b79ba603605db21ac51, PSY, 2)..]
Run Code Online (Sandbox Code Playgroud)

知道怎么做吗?

Json如下:

{
" response": {
"class": "chart",
"data": [
    {
        "artist": {
            "class": "artist",
            "id": "ed61fe981f9143fe82536a0e5e9836f7",
            "musicbrainz": "73e5e69d-3554-40d8-8516-00cb38737a1c",
            "name": "Rihanna"
        },
        "rank": 1,
        "value": 42437.6397
    },
    {
        "artist": {
            "class": "artist",
            "id": "668dfb9383684b79ba603605db21ac51",
            "musicbrainz": "f99b7d67-4e63-4678-aa66-4c6ac0f7d24a",
            "name": "PSY"
        },
        "rank": 2,
        "value": 21562.2685
    },

   … goes up to …
Run Code Online (Sandbox Code Playgroud)

php json

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