小编Mar*_*sco的帖子

允许用户为图像选择相机或图库

我想做的事情似乎很简单,但经过几天的搜索,我无法弄明白.

我有一个应用程序,允许用户选择多个(最多5个)图像.我正在使用ImageView.当用户点击时ImageView,我想允许他们选择

  1. 从图库中选择图像,或
  2. 使用相机拍摄图像.

我开始使用ACTION_GET_CONTENT意图,这对于进入画廊非常有用.那么我尝试使用ACTION_PICK_ACTIVITY意图允许用户选择相机或图库:

Intent pickIntent = new Intent(Intent.ACTION_PICK_ACTIVITY);
Intent gallIntent=new Intent(Intent.ACTION_GET_CONTENT);
gallIntent.setType("image/*"); 
Intent camIntent = new Intent("android.media.action.IMAGE_CAPTURE");
pickIntent.putExtra(Intent.EXTRA_INTENT, camIntent);
pickIntent.putExtra(Intent.EXTRA_INTENT, gallIntent)
pickIntent.putExtra(Intent.EXTRA_TITLE, "Select Source");
startActivityForResult(pickIntent, IMAGE_SELECTOR);
Run Code Online (Sandbox Code Playgroud)

但似乎我只能添加一个EXTRA_INTENT.菜单按预期显示,但唯一的选项是图库和文件....没有相机).

有没有更好/更简单的方法来做到这一点,我错过了?谢谢你的帮助.

android android-intent android-gallery android-camera android-intent-chooser

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

在android设计支持TabLayout中更改选项卡文本的字体

我正在尝试TabLayout从android设计库中处理新的东西.

我想将标签文本更改为自定义字体.并且,我试图搜索一些与之相关的样式TabLayout,但最终还是达到了这个目的.

请指导我如何更改标签文本字体.

fonts android android-fonts android-design-library android-tablayout

96
推荐指数
11
解决办法
7万
查看次数

Android DownloadManager获取文件名

在我的应用程序中,您可以下载一些文件 我使用Android DownloadManager类进行下载.下载完成后,它会显示一条消息,说明该文件已下载.问题是,可能同时有2,3或4次下载.我的BroadcastReceiver代码看起来像这样:

receiver_complete = new BroadcastReceiver(){
         @Override
          public void onReceive(Context context, Intent intent) {
             String action = intent.getAction();
                if (action.equals(DownloadManager.ACTION_DOWNLOAD_COMPLETE) ){
                    Toast.makeText(MainActivity.this, MainActivity.this.getString(R.string.download_finished, "Here should be the name", Toast.LENGTH_SHORT).show();
                }
         }
     };
Run Code Online (Sandbox Code Playgroud)

如何获取完成下载的当前文件名?

非常感谢你.

java android broadcastreceiver receiver android-download-manager

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

如何以编程方式显示CoordinatorLayout中的折叠元素?

CoordinatorLayout在博客中有描述:http://android-developers.blogspot.ru/2015/05/android-design-support-library.html

<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

  <android.support.v7.widget.RecyclerView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" />

  <android.support.design.widget.AppBarLayout
          android:layout_width="match_parent"
          android:layout_height="wrap_content">
     <android.support.v7.widget.Toolbar
              ...
              app:layout_scrollFlags="scroll|enterAlways">

     <TextView
              ...
              app:layout_scrollFlags="scroll|enterAlways">
   </android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

里面AppBarLayout我有ToolbarTextView额外的状态信息.AppBarLayout可以折叠(滚动后).有时我需要显示AppBarLayout才能显示已更改的状态.

如何以编程方式执行?

android android-layout material-design coordinator-layout android-appbarlayout

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

删除文件夹后,mkdir()返回false

我的应用程序中有一个名为"重置"的按钮,用于删除整个文件夹(用户文件夹).在那之后,我试图再次创建相同的文件夹,第一次尝试它,它允许我创建文件夹,但第二次我尝试重置并重新创建用户文件夹,应用程序崩溃因为mkdir ()没有创建该文件夹,我试图在该文件夹上创建一个数据库.但是,奇怪的是,崩溃后,文件夹已经创建.

我有权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Run Code Online (Sandbox Code Playgroud)

我尝试了两种方法:

f.mkdir();
f.mkdirs();
Run Code Online (Sandbox Code Playgroud)

我有什么不对的?任何的想法?

android mkdir mkdirs

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