小编Ris*_*hka的帖子

如何从另一个gradle文件访问值?

好的,这是我当前的build.gradle:

apply plugin: 'com.android.application'
apply from: '../config.gradle'

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.2"

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

dependencies {
    howManyTables.execute()
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.3'
    compile 'com.pnikosis:materialish-progress:1.4'
}
Run Code Online (Sandbox Code Playgroud)

这就是config.gradle:

def amountOfTables = 15

task howManyTables << {
    println amountOfTables
}
Run Code Online (Sandbox Code Playgroud)

问题是:为什么我可以从config.gradle访问howManyTables任务.但无法访问已定义的变量?我想创建具有预定义值的自定义config.gradle.然后在我的Android应用中将它们用作变量.(如baseURL,数据类型等...).而他们,根据这些数据构建我的逻辑.无论如何,问题很明显我希望;)任何想法?

gradle android-gradle-plugin

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

如何以编程方式将多个自定义linearLayouts添加到listView项

我有一个很烦人的问题。我的任务是使用自定义XML模板(而且我不知道可以有多少个Layout)将多个LinearLayouts添加到内部(每个中)有2个TextViews放入1个ListView项目中。像这样:在此处输入图片说明

是否可以在ArrayAdapter中执行此操作?任何帮助将非常感激!

好的,我已经在Jonas Cz的帮助下做了一些事情。这就是我所拥有的。

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    if(convertView == null)
    {
        convertView = inflater.inflate(R.layout.parsed_csv_list_view_main_item, parent, false);
    }
    RealmResults<ParsedCSV> titles = parentFragment.getParsedCSVtitles();
    String[] parsedTitles = titles.get(0).getValues().split(";");
    String[] parsedValues = items.get(position).getValues().split(";");

    for (int i = 0; i < parsedValues.length; i++) {
        View holder = inflater.inflate(R.layout.parsed_csv_list_view_subitem, parent, false);
        TextView textViewTitles = (TextView) holder.findViewById(R.id.parsed_csv_list_view_subitem_text_title);
        TextView textViewValues = (TextView) holder.findViewById(R.id.parsed_csv_list_view_subitem_text_value);
        textViewTitles.setText(parsedTitles[i]);
        textViewValues.setText(parsedValues[i]);
        ((LinearLayout) convertView).addView(holder);
    }
    return ((View)convertView);
}
Run Code Online (Sandbox Code Playgroud)

我不得不将convertView强制转换为LinearLayout,因为converView没有addView方法。好的,这很可惜,但是可以...有一些问题。现在,在滚动时,由于某种原因,列表中的项目数量似乎有所增加。有人可以解释一下为什么会发生这种情况以及如何解决吗?

JonasCz的完全解决方案

@Override
public View getView(int position, View …
Run Code Online (Sandbox Code Playgroud)

android listview android-layout

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

是否可以通过SSH(Gradle)编译bitbucket依赖?

好吧,我正在尝试编译对远程maven url(bitbucket)的依赖.问题是我无法在该阶段传递bitbucket身份验证.我试过这个:

repositories{
  maven{ url "https:" + "${username}" + ":" + "${password}" + ...etc}
}
Run Code Online (Sandbox Code Playgroud)

它对我不起作用.所以我通过SSH启用并连接.问题是:如何使用SSH从远程私有maven存储库(托管在bitbucket上)编译依赖项?

git ssh gradle maven

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