- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 try catch 照片并将其显示在 ImageView 中。第一部分已成功完成并保存图像:
public void takePhoto (View view) {
String baseDir = Environment.getExternalStorageDirectory().getAbsolutePath();
String fileName = "myPhoto.jpg";
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
imageFile = new File(baseDir + File.separator + fileName);
Uri uri = Uri.fromFile(imageFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(intent, 0);
}
但是,我无法在 ImageView 中以全尺寸显示图像:
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == 0)
{
if(imageFile.exists())
{
Toast.makeText(this,"file saved!",Toast.LENGTH_SHORT).show();
ImageView myImage = (ImageView) findViewById(R.id.imageView1);
Bitmap bmImg = BitmapFactory.decodeFile("imageFile");
myImage.setImageBitmap(bmImg);
}
else
{
Toast.makeText(this,"file not saved!",Toast.LENGTH_SHORT).show();
}
}
}
XML 布局是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.example.android.trial3.MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Shoot"
android:onClick="takePhoto"/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/imageView1"/>
</LinearLayout>
Manifest.XML 文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.trial3">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
我收到以下错误:
BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0
感谢任何帮助。
最佳答案
查看 docs在 decodeFile
方法的 pathName
参数上。
String: complete path name for the file to be decoded.
您需要将图像文件的绝对路径传递给 BitmapFactory.decodeFile()
。
替换以下行:
BitmapFactory.decodeFile("imageFile");
与:
BitmapFactory.decodeFile(imageFile.getAbsolutePath());
此外,您的 Manifest.xml
中似乎缺少以下权限:
android.permission.WRITE_EXTERNAL_STORAGE
所以你的 list 应该如下所示:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.android.trial3">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
</application>
</manifest>
在 API 级别 23+ 上,您需要在运行时请求此权限。
检查this有关如何请求运行时权限的链接。
关于java - 拍摄照片并在 Android 的 ImageView 中以全尺寸显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37749277/
我的网站使用 AmCharts,我想将其设为全尺寸。例如,我有以下代码: #chartdiv { width : 50%; height : 500px; float : left; } var
您需要使用edge或mozilla打开以下页面。 这是页面:codepen.io 这是我尝试过的: html{ max-height:1900px; max-width:2600px; } 因
我正在尝试通过以下代码使 html5 canvas 变为全尺寸。我知道还有其他使用 javascript 的方法,但是这有什么问题吗? Canvas_dot #m
如何达到outerPanel的全宽? private JPanel createLabelPanel() { final JToolTip tt = new JToolTip(
我的页面分为 3 个部分。 , 和 . 固定在顶部,大小为 109px,边框高 6px,因此 到顶部有 109 像素的边距。 我想要 扩展到 下面的整个页面和 那应该,如果没有可用于将其向下推的
我有一个网站需要在浏览器窗口中完全独立,即用户不必上下滚动即可查看网站的不同部分。太长而无法放入内容 Pane 的内容由 overflow:auto 处理,效果很好。 问题是,无论我怎么尝试,我仍然遇
我正在尝试设置一个网页,但由于我的元素的高度,我快疯了。特别是,我想要的布局是: 顶部有一个固定高度(例如 150 像素)和 100% 宽度的标题。 在标题下,我需要两列。左边的列有固定的宽度(例如
如何在 XAML 中将根布局的尺寸设置为 的 100% 宽度和高度?包含 Silverlight 应用程序的标记。 我试过指定 100%,但宽度和高度属性只采用单位文字(精确像素)。有没有办法让 S
ONLINE SAMPLE 我想让第一个 div layer1(红色 block )显示窗口的完整大小,可缩放。Layer2(蓝色 block )假设始终在 layer1 之下。但是,当我将窗口高度变
我不确定如何解释我到底想要什么(这也很难用谷歌搜索),但我想创建一个表格,每个单元格都有特定的宽度和高度(比如 40x40 像素) . 这个表格将比视口(viewport)大很多,所以它需要一些滚动,
我是一名优秀的程序员,十分优秀!