2011-01-31 7 views
-2

Привет Я хочу, чтобы установить данные в EditText в onActivityResult(), I Got Результат после предыдущего, но я не могу установить значение в моей текущей EditText .. Привет, мой код:Android: EditText.setText() не работает должным образом?

public class MyStuff extends Activity { 
EditText messageArea; 
int baseValue=200; 
TextView txtCounter; 
Button btnStuffOk; 
Button btnStuffCancel; 
ImageButton imgBrowse; 
private Gallery gallery; 
Bitmap myBitmap; 
boolean flag=false; 
int val=0; 
private ArrayList<String> arrayLst=new ArrayList<String>(); 
protected static final int SELECT_IMAGE = 1; 
protected static final int SELECT_URL = 2; 
BitmapFactory.Options options = new BitmapFactory.Options(); 
String url_data=""; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.mystuff); 



    imgBrowse.setOnClickListener(new OnClickListener() 
    { 
     @Override 
     public void onClick(View v) { 
      Intent photoPickerIntent = new Intent(Intent.ACTION_PICK); 
      photoPickerIntent.setType("image/*"); 
      startActivityForResult(
         new Intent(
           Intent.ACTION_PICK, 
            android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI), 
         SELECT_IMAGE); 
     } 
     }); 

    gallery = (Gallery) findViewById(R.id.examplegallery); 
    gallery.setAdapter(new AddImgAdp(this)); 

    messageArea=(EditText)findViewById(R.id.editArea01); 


    txtCounter=(TextView)findViewById(R.id.txtCounts); 

    btnStuffOk=(Button)findViewById(R.id.btnStufftOk); 
    btnStuffCancel=(Button)findViewById(R.id.btnStuffCancel); 

    messageArea.addTextChangedListener(new TextWatcher() { 


     public void afterTextChanged(Editable s) { 
      if(s.toString().length()<1 ||s.toString().length()>200) 
      { 
       btnStuffOk.setEnabled(false); 
      } 
      else 
      { 
       btnStuffOk.setEnabled(true); 
      } 

       txtCounter.setText(""+(baseValue-s.toString().length())); 

     } 
     public void beforeTextChanged(CharSequence s, int start, int count,int after) { 

     } 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 

     } 
}); 
} 

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

     switch (requestCode) { 

      case SELECT_IMAGE: 
      if (resultCode == Activity.RESULT_OK) { 
       // 
       break; 
      } 
      case SELECT_URL: 
       if (resultCode == Activity.RESULT_OK) { 

        messageArea.setText(data.getStringExtra("url")); 
        messageArea.setText("this is a test"); 

        break; 
       } 


     } 
    } 
} 

data.getStringExtra("url") показывает значение .., но я не могу назначить его ИНТ EditText ... Пожалуйста, помогите мне ...

+1

PLS добавить фрагмент кода, когда вы получаете аранжировку и logcat o/p, которая отображается ошибка –

+1

Как мы должны помочь вам с информацией, которую вы нам дали? – Falmarri

+1

, не смотря на код, он будет очень сложно 2 предскажите проблему, но я могу сделать предположение, возможно, вы используете неправильный контекст .... –

ответ

1

Убедитесь, что ваш экземпляр EditText доступен и доступен в onActivityResult метод, а затем использовать EditText.setText()

Кроме того, как говорят все остальные, прикрепите код/​​ошибку, чтобы мы могли проверить, где проблема.

Смежные вопросы