我试图在拍摄后获取照片,但未调用 onActivityResult:
public class questionListView extends LinearLayout {
protected static final Integer PICTURE_RESULT = 1;
private Context ctx;
public Uri path;
public questionListView(Context context, AttributeSet attrs) {
super(context, attrs);
ctx = context;
init();
}
public questionListView(Context context) {
super(context);
ctx = context;
init();
}
private void init() {
LayoutInflater factory = LayoutInflater.from(getContext());
View myView = factory.inflate(R.layout.view1, null);
LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT);
myView.setLayoutParams(params);
addView(myView);
Button btaddphoto = (Button) myView.findViewById(R.id.btAddPhoto);
btaddphoto.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
String _path = Environment.getDataDirectory() + File.separator + "pic1.png";
File file = new File(_path);
Uri outputFileUri = Uri.fromFile(file);
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
((Activity) ctx).startActivityForResult(intent, PICTURE_RESULT);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Bitmap mBitmap;
String _path = Environment.getDataDirectory() + File.separator + "pic1.png";
mBitmap = BitmapFactory.decodeFile(_path);
if (mBitmap == null) {
// bitmap still null
} else {
// kleine bitmap maken
// deze in een imageview toevoegen aan layout lvPhotos
}
}
}
我收到一条错误消息
super.OnActivityResult(requestCode, resultCode, data);
错误信息:
The method onActivityResult(int, int, Intent) is undefined for the type LinearLayout
如果我离开了,函数 onActivityResult 不会被调用。
我究竟做错了什么?
rg,埃里克