小编Pra*_*nCG的帖子

是否可以取消/停止使用DownloadManager启动的下载?

我正在使用DownloadManager在我的应用程序中下载一堆文件.我无法弄清楚如何取消downloadManager排队的下载.

有两种可能性:a.用户可以通过在通知栏中单击它来手动取消它.湾 取消并通过代码删除下载.

我定义了以下接收器.

<receiver 
        android:name=".DownloadStatusReceiver"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.DOWNLOAD_COMPLETE" />
            <action android:name="android.intent.action.DOWNLOAD_NOTIFICATION_CLICKED" />
     </intent-filter>
 </receiver> 
Run Code Online (Sandbox Code Playgroud)

并在接收器中

if (DownloadManager.ACTION_NOTIFICATION_CLICKED.equals(action)) {

    Constants.showLog(TAG, "Notification clicked");
    long downloadId = intent.getLongExtra(DownloadManager.EXTRA_DOWNLOAD_ID, 0);
    DownloadManager dm =(DownloadManager)context.getSystemService(Context.DOWNLOAD_SERVICE);             
    dm.remove(downloadId);

}
Run Code Online (Sandbox Code Playgroud)

任何见解?

android android-download-manager

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

ViewGroup完成膨胀事件

我创建了一个扩展ViewGroup的自定义布局.一切都很好,我按预期得到了布局.

我想动态更改布局中的元素.然而,这不起作用,因为我在onCreate中调用它,直到那时整个布局实际上(绘制)没有膨胀到屏幕上,因此没有实际大小.

是否有任何事件可以用来找出布局的膨胀何时完成?我试过onFinishInflate但是这不起作用,因为Viewgroup有多个视图,这将被多次调用.

我正在考虑在自定义布局类中创建一个接口,但不确定何时触发它?

android android-layout viewgroup

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

要求图形团队设计Android应用程序UI时的最佳实践

我不确定这是否可以在Android中支持各种设备上的多种外形.这是我们通常面临的最痛苦的情景之一.

场景:设计团队为应用程序创建UI图形,其中包含所有UI小部件,其位置预定义为按钮,edittext等.这是我们需要在我们的应用程序中使用的UI.

问题:无法链接UI小部件,例如提交按钮超过图像上提交的实际位置.有没有办法链接他们?它会适用于所有形状因素吗?

当前解决方案:使用布局从头开始重新创建包含其所有组件的整个UI.

正如我在iOS中所知,实际上可以将小部件放在顶部并具有透明背景,并且开箱即用.这是可能的,因为您可以使用x和y的绝对值.

- 编辑 -

我想从上面的描述中不太清楚.问题不在于使用哪种Android布局,这实际上意味着使用LinearLayout或RelativeLayout使用组件从头开始创建布局.

真正的问题是,当我们从设计师那里获得UI设计时,除了标准屏幕分辨率480X800之外,他们对Android或其平台一无所知,我们应该给他们什么建议?有点像给我一个设计,所有组件都是层,然后可以从头开始提取和使用Android布局.

android android-layout

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

为ListView强制onSizeChanged

我有一个listview,动态分配不同的数据集.这很好用.我也使fastScrollEnabled成为现实.对于要更新的​​sectionIndexer,我需要调用

list.setFastScrollEnabled(false);
list.setFastScrollEnabled(true);
Run Code Online (Sandbox Code Playgroud)

问题是左上方的索引显示,这是一个已知的问题.作为解决方法,每当我更改方向时,都会再次正确显示索引.为了测试这个我已经实现了一个自定义ListView,观察是如果我可以强制listView调用onSizeChanged()它将正确显示.

现在的问题是:

是否可以强制listView调用onSizeChanged()方法?如果是,我们怎样才能做到这一点.

有没有人知道调用onSizeChanged()时的条件.当方向改变时,我们可以想到任何其他条件.

android android-layout android-listview

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

RatingBar - 切换或取消

背景: 我们使用标准的Android RatingBar和5星.我们允许用户使用此RatingBar从1到5进行评级.我们显示的默认值为零,未评级.

问题: 当用户点击评级栏甚至一次后,当前无法将评级统一或设置回零.它们只能使它成为最小的值1.即使在代码中也不能这样做,因为如果多次单击相同的等级,则不会调用onRatingChange事件.

有关如何克服这一点的任何想法,是否可能?在这种情况下,是否会使用RatingBar帮助创建一个新的子类?

提前致谢.

更新:该问题没有任何代码,因为它与代码中的问题无关.这是关于RatingBar的功能和限制的问题.

android android-layout ratingbar

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

Openssl TLS扩展支持配置(服务器名称指示)

我想配置openssl客户端服务器以支持TLS扩展,特别是服务器名称指示(SNI).

我在ubuntu linux上构建了最新的openssl 1.0.0e,但没有提供任何额外的配置参数.

 
./config
make
make install

在构建此版本时,不确定是否需要提供任何其他配置参数.

现在我已经设置了服务器并使用openssl,viz s_client和s_server提供的标准命令行工具通过openssl客户端连接到服务器.

我的问题是:如何在s_client中指定要作为扩展名发送的主机名?openssl是否具有使用命令行中的某些参数指定服务器名称的规定?

谢谢!

ssl https openssl sni

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

分享意图不适用于将视频上传到youtube

我正在尝试共享正在创建并存储在其路径已通过的外部sdcard上的视频。

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES).getAbsolutePath()
Run Code Online (Sandbox Code Playgroud)

我正在使用SEND_INTENT,如下所示:

Intent shareIntent = new Intent(Intent.ACTION_SEND);                         
shareIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
shareIntent.setType("video/mp4");
shareIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "My Subject");
shareIntent.putExtra(android.content.Intent.EXTRA_TEXT,"My Text");
shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(video_path));
startActivityForResult(Intent.createChooser(shareIntent, "Share Your Video"),SHARE_INTENT);
Run Code Online (Sandbox Code Playgroud)

问题:当我通过gmail分享时,它显示了带有视频的撰写窗口。但是没有显示视频的大小,并且当您发送或取消窗口时,gmail将与contentresolver上的inputstream NPE一起崩溃。

如果是youtube,则表示您无法从云服务上传视频,我的视频显然驻留在设备上。

如果是facebook,它将被静默丢弃。wassup可以正常工作。:-)

任何想法如何使它起作用?

编辑:

视频路径: /storage/emulated/0/Movies/MyFolder/my-video_1378253389208.mp4

更新

通过添加file:///后缀,gmail和facebook可以正常工作。Youtube仍在争论“无法从云服务上传视频”。

youtube video android facebook android-intent

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

SQLite 排序 TEXT 字段

我有下表:

CREATE TABLE IF NOT EXISTS TEST_TABLE ( testID INTEGER PRIMARY KEY AUTOINCREMENT, testName TEXT);

部分测试数据

  1. 测试
  2. 你好
  3. 世界

我的查询

SELECT * FROM TEST_TABLE ORDER BY testName

回复:

  1. 你好
  2. 测试
  3. 世界

预期的:

  1. 你好
  2. 测试
  3. 世界

有人可以解释为什么这是这样的回应吗?

sqlite android

0
推荐指数
1
解决办法
882
查看次数