小编Qua*_*ium的帖子

Android动作栏

我正在寻找Android 2.1到2.3.4中ActionBar的实现,我可以从特定活动中动态设置操作栏的内容,也可以从操作栏中单击按钮动作.

有没有这种类型的开源库,或者有人可以帮助我如何开始构建相同的.

android android-actionbar

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

Android 4.0 asynctask同时不可能

我有同样的问题同时运行多个AsyncTasks - 不可能吗? 除了我使用android 4.0与android:minSdkVersion ="14".

我试过他的例子,并得到:

bar bar bar
bar bar bar
bar bar bar
Run Code Online (Sandbox Code Playgroud)

编辑:

我在这里找到了解决方案

而不是使用:

task.execute();
Run Code Online (Sandbox Code Playgroud)

使用 :

task.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, null);
Run Code Online (Sandbox Code Playgroud)

multithreading android android-asynctask android-4.0-ice-cream-sandwich

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

将图像添加到图库

我的应用程序将图像存储在私人文件夹/sdcard/Android/data/com.mypackage.myapp/files/中.我想将这些图片添加到图库中.我尝试将它们添加到媒体商店,但它为我在私人目录中的每个文件夹创建了一个文件夹.我希望更多地控制相册的名称/结构.我想我应该使用内容提供商,但我不知道下一步该做什么.我正在使用的片段如下:

    ContentValues values = new ContentValues(4);
    long current = System.currentTimeMillis();
    values.put(MediaStore.Images.Media.TITLE, file.getName());
    values.put(MediaStore.Images.Media.DATE_ADDED, (int) (current / 1000));
    values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpg");
    values.put(MediaStore.Images.Media.DATA, file.getAbsolutePath());
    ContentResolver contentResolver = context.getContentResolver();

    Uri base = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
    Uri newUri = contentResolver.insert(base, values);

    // Notify the media application on the device
    context.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, newUri));
Run Code Online (Sandbox Code Playgroud)

这很好但不能让我控制文件夹结构.如何将我的图像添加到图库,其文件夹结构与文件结构不同,如google与"picasa"一样(以及如何为文件夹添加自定义图标,如下面的picasa图标)

在此输入图像描述

android mediastore android-contentprovider

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

新版本的SwipeRefreshLayout会导致错误的视图绘制

我有一个由Fragments组成的ViewPager(由AbstractBrowsePagerAdapter支持).每个片段都使用SwipeRefreshLayout作为根来扩展布局.我最近更新到support-v4:21.0.0库.新的SwipeRefreshLayout使用圆形进度条而不是线性垂直进度条,如下面的屏幕截图所示.

当我拉动刷新时,向右滑动,在ViewPager中创建一个与我拉动刷新的索引相同的索引,然后转到新的碎片,上一个视图仍然出现在我的新内容之上.

新SwipeRefreshLayout的错误

正如您在屏幕截图中看到的那样,"空目录"textview和"circle progressbar"仍然出现在上一个被破坏的片段中.

  1. 仅当SwipeRefreshLayout处于加载状态(加载器显示在屏幕上)时才会发生这种情况
  2. 以前版本的SwipeRefreshLayout不会发生这种情况
  3. 发生错误时,hierarchyviewer工具不起作用.它之前有效,如果我重新启动应用程序,但在处于窃听状态时不起作用.
  4. 当我使用DDMS转储视图时,不会显示前一个片段中的视图.

这似乎是新的SwipeRefreshLayout中的一个错误,但我找不到任何人有同样的问题,似乎没有在https://code.google.com/p/android/issues/list?can=上报告1 q = SwipeRefreshLayout&colspec = ID +型+状态+ +所有者摘要+星&细胞=瓦片

我正在寻找一种解决方法,强制删除前一个片段中的视图.

android swiperefreshlayout

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

Android 4.0自定义通知,如谷歌音乐

我想创建一个带有进度条和删除按钮的自定义通知.

截图:

在此输入图像描述

我成功创建了带有进度条的自定义通知,但我没有设法创建删除事件.我想取消通知并在用户点击"x"后停止上传(如在谷歌音乐中,因此我不想启动活动来清除通知).

这是我的工作代码:

    notificationManager = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE);

    int icon = R.drawable.ic_launcher;
    CharSequence tickerText = "Hello";
    long when = System.currentTimeMillis();

    notification = new Notification(icon, tickerText, when);    


    CharSequence contentTitle = "My notification";
    CharSequence contentText = "Hello World!";
    Intent notificationIntent = new Intent(context, UploadEventsReceiver.class);
    PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);

    notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
    notification.contentView = new RemoteViews(context.getPackageName(), R.layout.upload_progress);
    notification.contentView.setOnClickPendingIntent(R.id.text, contentIntent);

    notificationManager.notify(this.notificationId, notification);
Run Code Online (Sandbox Code Playgroud)

在线

Intent notificationIntent = new Intent(context, UploadEventsReceiver.class);
Run Code Online (Sandbox Code Playgroud)

我尝试使用没有"广播"的BroadCast接收器,但我不知道这是否是正确的方法,我没有成功使其工作.我应该使用什么以及如何使用它?

notifications android android-4.0-ice-cream-sandwich

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

从非主线程读取/ proc/self/exe时,Android权限被拒绝

我正试图获得/ proc/self/exe的规范路径.当我在主线程上执行此操作时,它可以工作,当我在另一个线程上执行此操作时,它会因IOException崩溃:"权限被拒绝":

                   DBG  E  Thread: main
                        E  Path: /system/bin/app_process32
                        E  Thread: Thread-21656
            System.err  W  java.io.IOException: Permission denied
                        W      at java.io.File.canonicalizePath(Native Method)
                        W      at java.io.File.getCanonicalPath(File.java:414)
                        W      at java.io.File.getCanonicalFile(File.java:428)
                        W      at com.quanturium.testbugprocselfexe.MyActivity.getPathOfExecutable(MyActivity.java:36)
                        W      at com.quanturium.testbugprocselfexe.MyActivity.access$000(MyActivity.java:12)
                        W      at com.quanturium.testbugprocselfexe.MyActivity$1.run(MyActivity.java:26)
                        W      at java.lang.Thread.run(Thread.java:818)
Run Code Online (Sandbox Code Playgroud)

码:

@Override
protected void onCreate (Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    getPathOfExecutable(); // Works as expected

    new Thread(new Runnable() {
        @Override
        public void run ()
        {
            getPathOfExecutable(); // Trigger the IOException: Permission denied
        }
    }).start();
}

private void getPathOfExecutable()
{
    try
    { …
Run Code Online (Sandbox Code Playgroud)

java linux android system

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