簡體   English   中英

如何在Android中將個人頭像圖片放置在該位置?

[英]How to place profile picture image on that place in Android?

在我的應用中,我想將圖像放置在選擇用戶圖像的地方。 在我的片段中,我有一個圖像視圖和一個按鈕,當我從圖庫中選擇圖像時,無法將其放置在圖像視圖上。

這是我的代碼:

個人資料片段:

 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); } 

請任何人幫助我。

在承載片段的活動中,確保添加以下行:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
}

檢查這篇文章以獲取更多信息不是從片段調用Android onActivityResult

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM