В моем приложении я хочу поместить изображение в место, где выбрано изображение пользователя. В моем фрагменте у меня есть один вид изображения и одна кнопка, когда я выбираю изображение из галереи, я не могу поместить изображение в изображение.Как разместить изображение изображения профиля в этом месте на Android?
Вот мой код:
Профиль Fragment:
public class ProfileFragment extends Fragment {
//private static Bitmap Image = null;
private ImageView imageView;
private static final int SELECT_PHOTO = 1;
Button browseProfilePic;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_layout_profilepic, container, false);
imageView = (ImageView)view.findViewById(R.id.profile_image);
browseProfilePic = (Button) view.findViewById(R.id.btn_pick);
browseProfilePic.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent photoPickerIntent = new Intent(Intent.ACTION_PICK);
photoPickerIntent.setType("image/*");
startActivityForResult(photoPickerIntent, SELECT_PHOTO);
}
});
return view;
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
switch(requestCode) {
case SELECT_PHOTO:
if(resultCode == getActivity().RESULT_OK){
try {
final Uri imageUri = imageReturnedIntent.getData();
final InputStream imageStream = getActivity().getContentResolver().openInputStream(imageUri);
final Bitmap selectedImage = BitmapFactory.decodeStream(imageStream);
imageView.setImageBitmap(selectedImage);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
}
}
Моя активность:
public class AccountActivity extends FragmentActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.account);
String item = getIntent().getStringExtra("item");
Fragment fragment = null;
switch(item) {
case "Balance": fragment = new BalanceFragment(); break;
case "Personal": fragment = new PersonalFragment(); break;
case "Work": fragment = new WorkFragment(); break;
case "Address": fragment = new AddAddressFragment(); break;
case "Vehicle": fragment = new AddVehicleFragment(); break;
case "Preference": fragment = new PreferenceFragment(); break;
case "About": fragment = new AboutFragment(); break;
case "Settings": fragment = new SettingsFragment(); break;
case "Help": fragment = new HelpFragment(); break;
case "Profile":fragment = new ProfileFragment(); break;
case "Logout":logout();break;
default: fragment = new DefaultFragment(); break;
}
if (savedInstanceState == null) {
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
// AccountFragment fragment = new AccountFragment();
transaction.replace(R.id.account_frame, fragment);
transaction.commit();
}
setTitle(item);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode,resultCode,data);
}
Пожалуйста, помогите мне.
Можете ли вы быть более конкретными о том, что идет не так? Любые исключения или что? – endasan