gpt4 book ai didi

java - 为什么加载图像在模拟器上有效但在 s4 上无效?

转载 作者:行者123 更新时间:2023-12-01 11:54:09 25 4
gpt4 key购买 nike

我正在尝试将图像加载到我的应用程序的 ImageView 中。然而,每当我在我的 S4(运行 4.4.2)上尝试它时,一旦我点击我想要加载的图像。它说“不幸的是,E-textHome 已停止。”。但是当我在我的模拟器(Nexus7(运行 4.1.3))上尝试该应用程序时,它工作得很好。所以我想知道我做错了什么以及如何让它在我的 s4 上工作?谢谢!

代码:-

public class EncryptImg extends ActionBarActivity implements OnClickListener{

private static int LOAD_IMAGE_RESULTS = 1;

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.encryptimg);

Button galleryBrowse = (Button) findViewById(R.id.browseGallerybtn1);
galleryBrowse.setOnClickListener(this); /*Set OnClickListener for to listen for the galerryBrowse button*/

}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.getId() == R.id.browseGallerybtn1){
Intent loadImgIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(loadImgIntent, LOAD_IMAGE_RESULTS);
}
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
ImageView imgEncrypt = (ImageView) findViewById(R.id.encryptImgView);

// http://www.itcuties.com/android/pick-image-from-gallery/.

if (requestCode == LOAD_IMAGE_RESULTS && resultCode == RESULT_OK && data != null) {
// Let's read picked image data - its URI
Uri pickedImage = data.getData();
// Let's read picked image path using content resolver
String[] filePath = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(pickedImage, filePath, null, null, null);
cursor.moveToFirst();
String imagePath = cursor.getString(cursor.getColumnIndex(filePath[0]));

// Now we need to set the GUI ImageView data with data read from the picked file.
imgEncrypt.setImageBitmap(BitmapFactory.decodeFile(imagePath));

// At the end remember to close the cursor or you will end with the RuntimeException!
cursor.close();
}
}

}

XML 文件:-

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<Button
android:id="@+id/browseGallerybtn1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="19dp"
android:layout_marginTop="20dp"
android:text="Browse Gallery" />

<ImageView
android:id="@+id/encryptImgView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/ic_launcher" />

</RelativeLayout>

最佳答案

如果您说应用程序正在模拟器上运行,那么它必须对 list 文件中的权限执行某些操作。确保您已授予所有必需的权限,例如“READ_EXTERNAL_STORAGE”等。

关于java - 为什么加载图像在模拟器上有效但在 s4 上无效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28564564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com