0

display_image.xml という名前の 1 つの画面に galleryview を実装しました。ユーザーが画像を選択して同じ画面 display_image.xml で画像の保存ボタンを押すと、sdcard で利用可能なさまざまな画像が表示され、選択した画像は自分のプロフィール画像で変更する必要があります別の画面。

私の質問は、ある画面からその画像を取得して別の画面でユーザーの写真を変更する方法と、ユーザーが後でログインしたときに後で取得するために、選択した画像もデータベースに挿入する必要があるということです。私の画像はどのWebサービスからも来ていないことをお伝えしましょう。

私を助けてください........ありがとう........

4

3 に答える 3

0

これは 2 つの方法で行うことができます: 1)選択した画像の SD カードのパスを渡し、imageview のパスからその画像を直接ロードします。 2)画像を byes[] に変換し、bytes[] を渡して画像を取得できます。

あなたが私を手に入れてくれることを願っています。幸運を祈ります

于 2012-01-12T06:43:48.023 に答える
0

最初に行う必要があるのは、インテントを宣言することです

Intent i_cp = new Intent(this,ImagePicker.class);

startActivityForResult(i_cp, 111);そして、何らかの結果を探すために使用します。私たちの場合、画像の位置。整数値。

開始されたインテントによって返されたときに結果を識別するために使用される request_code (111) を指定します。ここでは使用setAction(i_cp.ACTION_PICK);setType("image/*");ません。画像を返さないため、画像の位置を返すだけです。Intent の使用は、整数値 (値の位置) の受け渡しと取得のみに限定されます。

ユーザーが選択した画像の位置を取得するにはどうすればよいでしょうか。位置は、パラメータの 1 つによって GalleryView の onItemClick メソッドで取得されます

public void onItemClick(AdapterView parent, View v, int position,long rid)

int pos; などの 1 つの変数を宣言するようになりました。-1 を割り当てて、画像が選択されているかどうかを識別し、画像が選択されている場合は、ボタン saveimage の onclick イベントで値の位置を次のように渡します。

retIntent.putExtra("SelectedImage", pos);

onActivityForResultでは、渡されたリクエストコードによってインテントを識別し、その位置を次のように抽出します。

int pos = data.getExtras().getInt("SelectedImage");

そしてそれを次のように設定します

usr_im.setImageResource(ImagePicker.pics[pos]);

res/drawableアプリケーションのフォルダの1 つに保存されている画像のすべての ID を保持するこの pics[] の配列は、次のように宣言します。

public static Integer[] pics={values};

そうしないと、画像を設定できません。

于 2012-01-30T12:15:58.933 に答える
0

Use "activityForResult".
Concept is start your image choosing activity by calling

startActivityForResult(INTENT_OF_YOUR_IMAGECHOOSING_ACTIVITY);

Now in this activity, when user clicks on any of the image handle that event as follows:
some OnClick(){<br>Intent resultIntent = new Intent(); in this intent set byte array of your image in extras OR the sd card path of your image

then call setResult(RESULT_OK, resultIntent);


This is gonna return the call to the previous activity in the method onActivityResult(int resultCode, ..., Intent data) HERE use the data as the intent to fetch the info you require

于 2012-01-12T06:58:13.027 に答える