2013-01-21 9 views
8

私の質問は、ユーザーが携帯電話から画像をアップロードして画像プロファイルとしてアプリケーションに挿入できるimageButtonを作成する方法ですか?たとえば、whatsappのように、ユーザーは電話から画像を選択して、画像プロファイルとして設定することができます。ここでは、ユーザーがアンドロイドアプリに画像を挿入できるようにしました

+0

私の答えは、あなたが答えにリンクのため – Janmejoy

答えて

7

は、リンクをたどっている

おかげ..

create image button

アップロード画像

example 1

example 2

example 3

+0

感謝を受け入れる助けます。私はあなたが提供した例でコードを実行することができました。アプリケーションがアカウントにサインアップする必要があり、ユーザーがプロフィール画像として画像を挿入する必要がある場合、ユーザーが自分のアカウントにログインすると、ユーザーはプロフィール画像を見ることができますか?それでどうやってできるの?同じようなwhatsapp;ユーザーがプロフィールにアップロードした画像はどのように保存されますか? – Mack

+0

@Mackあなたは、FacebookやTwitterやギャラリーからの解析や、 – Janmejoy

+0

のようないくつかの方法で、写真をアップロードすることを意味します。私の質問は:どこに私はユーザーの画像を格納する必要がありますか? MySQL DB、Sqlite DB、内部ストレージまたは外部ストレージ? – Mack

0

MY XMLファイル

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

<ImageView 
    android:id="@android:id/icon" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_weight="1" 
    android:onClick="selectImage" 
    /> 

MY FILE

public class Test extends AppCompatActivity { 
private static final int SELECT_PICTURE = 0; 
private ImageView imageView; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_test); 
    imageView = (ImageView) findViewById(android.R.id.icon); 
} 

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    super.onActivityResult(requestCode, resultCode, data); 
    if (resultCode == RESULT_OK) { 
     Bitmap bitmap = getPath(data.getData()); 
     imageView.setImageBitmap(bitmap); 
    } 
} 

private Bitmap getPath(Uri uri) { 

    String[] projection = {MediaStore.Images.Media.DATA}; 
    Cursor cursor = managedQuery(uri, projection, null, null, null); 
    int column_index = cursor 
      .getColumnIndexOrThrow(MediaStore.Images.Media.DATA); 
    cursor.moveToFirst(); 
    String filePath = cursor.getString(column_index); 
    // cursor.close(); 
    // Convert file path into bitmap image using below line. 
    Bitmap bitmap = BitmapFactory.decodeFile(filePath); 

    return bitmap; 
} 

private void selectImage() { 

    Intent intent = new Intent(); 
    intent.setType("image/*"); 
    intent.setAction(Intent.ACTION_GET_CONTENT); 
    startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_PICTURE); 
} 

} 
関連する問題