小编sga*_*man的帖子

以编程方式使用省略号创建TextView

我是以编程方式创建一个TextView,我想在最后省略省略号.

伪代码:

    tv.setEllipsize(TextUtils.TruncateAt.END);
    tv.setHorizontallyScrolling(false);
    tv.setSingleLine();
Run Code Online (Sandbox Code Playgroud)

以上工作很棒.

    tv.setEllipsize(TextUtils.TruncateAt.END);
    tv.setHorizontallyScrolling(false);
    tv.setMaxLines(1);
Run Code Online (Sandbox Code Playgroud)

这不起作用.这是一个错误吗?我不明白为什么在指定maxLines时最后不能将文本转换为省略号,尤其是maxLine为1但是setSingleLine没问题.

android textview

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

Android Gradle库依赖于使用Nexus的库依赖

我正在将我的项目转换为使用Gradle和内部SonaType Nexus来托管我的依赖项.我的核心项目依赖于库项目A和库项目A依赖于库项目B.

我的问题是,只要我将LibA添加到我的主项目中,我就会收到此错误:"模块版本com.example:LibA:1.1依赖于库但不是库本身"

使用相同的构建脚本添加带有jar依赖项的库项目没有问题.我见过人们用LOCAL(在项目中)成功地做了这个android库,但没有人用maven repos做这件事.

这是gradle中的错误还是我错误配置了库构建?

核心项目建设

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
    }
}
apply plugin: 'android'

repositories {
    maven {
        url "http://localhost:8081/nexus/content/repositories/releases/"
    }

    maven {
        url "http://localhost:8081/nexus/content/repositories/central/"
    }
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 14
        targetSdkVersion 19
    }
}

dependencies {
    compile 'com.android.support:support-v4:+'
    compile('com.example:LibA:1.+')
}
Run Code Online (Sandbox Code Playgroud)

LibA构建

buildscript {
    repositories {
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
    }
}

apply plugin: 'android-library'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion …
Run Code Online (Sandbox Code Playgroud)

android gradle maven android-studio

28
推荐指数
1
解决办法
9929
查看次数

Exif数据TAG_ORIENTATION始终为0

我需要知道图库中图像的方向(由相机拍摄).我最初的方法是使用适用于我的Droid 1的MediaStore.Images.Media.ORIENTATION.在HTC Thunderbolt上测试时,手机只能将0保存到该字段.

然后我开始阅读exif数据:

 ExifInterface exifReader = new ExifInterface(mFilePath);
 exifReader.getAttributeInt(ExifInterface.TAG_ORIENTATION, -1);
Run Code Online (Sandbox Code Playgroud)

这也为每个图像返回0.任何人都有关于如何正确获取Android照片的方向的想法?

camera android exif photo orientation

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

相机意图不保存照片

我以前成功使用过此代码片段,但文件指向SD卡上的某个位置.

final File temp = new File(getCacheDir(), "temp.jpg");
temp.delete();
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(temp));
startActivityForResult(intent, CONFIG.Intents.Actions.SELECT_CAMERA_PHOTO);
Run Code Online (Sandbox Code Playgroud)

但是,当我使用getCacheDir而不是SD卡上的loc时,似乎从未保存过照片.这是缓存目录和图像捕获的限制吗?

android android-camera-intent

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

Theme.Translucent在ICS上失败

我正在使用: android:theme="@android:style/Theme.Translucent.NoTitleBar"

结合: getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);

要获得漂亮的透明背景模糊效果,请模拟对话框样式.

这在2.3及以下版本中效果很好,但在运行ICS/3.0及更高版本的设备上它是纯色(读取不透明).我知道他们介绍了一个全息主题,似乎没有一个特定的Theme.Holo.Translucent主题.关于如何在ICS和旧版本上获得半透明背景的任何想法,我不反对使用在值-v11中定义的单独主题.

android themes android-4.0-ice-cream-sandwich

6
推荐指数
1
解决办法
3590
查看次数

从相机压缩位图

我需要通过网络发送从相机拍摄的图像。图像太大,无法创建使用 bitmap.compress() 所需的位图;看起来 Gmail 应用程序可以附加来自相机的图像,同时保持它们的大像素大小,但大大减小了它们的文件大小。

这行不通,因为我 getBitmap() 将返回一个大的 Image 来分配,我不想将其子采样到更小的尺寸。

    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    getBitmap().compress(Bitmap.CompressFormat.JPEG, 70, baos);
Run Code Online (Sandbox Code Playgroud)

关于如何在不超过我的总记忆力的情况下做同样的事情的任何想法?

更新:

对于任何回到此线程的人,我都遵循了 Phil 的回答,并使用 Apache MultiPartEntity 轻松完成了工作。(它为您处理从磁盘到网络的流文件)http://hc.apache.org/httpcomponents-client-ga/httpmime/apidocs/org/apache/http/entity/mime/MultipartEntity.html

memory gmail camera android bitmap

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

以编程方式列出意图过滤器

在 android Activity 中,有没有办法以编程方式列出它已注册的内容?

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
Run Code Online (Sandbox Code Playgroud)

我正在尝试确定当前活动是否为 LAUNCHER。

android intentfilter android-activity

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

IntelliJ Idea Android项目包括apk中的未加入文件

我有一个复杂的应用程序结构,主项目有android库,它们有自己的android库和jar.

主要项目

  • 利布斯
    • Android Lib项目A.
      • 罐子
      • Android Lib项目B.
    • 罐子

为了澄清我有一个android库项目,它有一个ActionBarSherlock依赖和Facebook依赖,我在几个类似的应用程序之间使用这个库项目.

在过去,我只能添加库作为依赖项,它只会构建android相关文件(src/res),但现在它包含了路径中的所有内容(测试,文档,示例文件夹,网站).

我不确定发生了什么变化,但我的apks现在充满了许多我不想要的文件,我不知道在哪里指定不包含它们.

注意:我之所以不能"删除"不需要的文件,是因为我正在使用子模块克隆存储库.

我正在使用IntelliJ Idea 11.1.2和android r20

更新: 这是我遇到的问题的示例项目:http://dl.dropbox.com/u/713581/TestDependency.zip

android build intellij-idea

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

从SD卡文件设置铃声通知

我的目标是从应用程序中存储到SD卡上的文件中设置用户通知声音.我正在使用此代码:

if(path != null){

    File k = new File(path, "moment.mp3");

    ContentValues values = new ContentValues();
    values.put(MediaStore.MediaColumns.DATA, k.getAbsolutePath());
    values.put(MediaStore.MediaColumns.TITLE, "My Song title");
    values.put(MediaStore.MediaColumns.SIZE, 215454);
    values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/mp3");
    values.put(MediaStore.Audio.Media.ARTIST, "Some Artist");
    values.put(MediaStore.Audio.Media.DURATION, 230);
    values.put(MediaStore.Audio.Media.IS_RINGTONE, false);
    values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
    values.put(MediaStore.Audio.Media.IS_ALARM, false);
    values.put(MediaStore.Audio.Media.IS_MUSIC, false);
    values.put(MediaStore.MediaColumns.DISPLAY_NAME, "Some Name");

    //Insert it into the database
    Uri uri = MediaStore.Audio.Media.getContentUriForPath(k.getAbsolutePath());
    Uri newUri = MainActivity.this.getContentResolver().insert(uri, values);

    RingtoneManager.setActualDefaultRingtoneUri(
      MainActivity.this,
      RingtoneManager.TYPE_NOTIFICATION,
      newUri
    );
    //RingtoneManager.setActualDefaultRingtoneUri(this, RingtoneManager.TYPE_NOTIFICATION, newUri);
    Toast.makeText(this, "Notification Ringtone Set", Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)

当我在设备上运行时,我不断收到错误:

06-12 15:19:36.741: ERROR/Database(2847): Error inserting is_alarm=false is_ringtone=false artist_id=35 is_music=false album_id=-1 …
Run Code Online (Sandbox Code Playgroud)

android mediastore ringtone

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