2013-03-28 2 views
0

Im начинающий, пожалуйста, помогите мне. Я весьма озадачен. Я хочу позвонить своему изображению с помощью базы данных, но я не знаю, как это сделать. пожалуйста помогите. Мой подход - это. Я хочу, чтобы автоматически изменить образ ImageView, когда представление текста также меняетсяВызов изображения в базе данных в ANDROID

 String question = Utility.capitalise(currentQ.getQuestion()); 
     TextView qImg = (TextView) findViewById(R.id.question); 
     qImg.setText(question); 
     ImageView yes = (ImageView) findViewById(R.id.imageQuestions); 

     if (qImg.equals("aso")) 
      // yes = R.drawable.aso; 
      yes.setBackgroundResource(R.drawable.aso); 

     else if (qImg.equals("Pusa")) 
      yes.setBackgroundResource(R.drawable.pusa); 
     else if (qImg.equals("Daga")) 
      yes.setBackgroundResource(R.drawable.daga); 

вопрос мои вопросы в базе данных. это всего лишь текст. И когда возникает вопрос об изменении, изображение также меняется.

+3

Я понятия не имею, что вы на самом деле с просьбой, что ваша цель и то, что проблема ... –

+0

Моя проблема изображение оленья кожа измените, когда я хочу его изменить. Если текст «Aso», изображение должно быть «Aso.png», а не другим изображением. – immaBeans

ответ

1

Ну, я думаю вы хотите изменить содержимое ImageView всякий раз, когда текст TextView изменяется. Однако я не уверен, поэтому дайте мне знать, если я ошибаюсь.

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

public void updateImages() { 
    String question = Utility.capitalise(currentQ.getQuestion()); 
    TextView qImg = (TextView) findViewById(R.id.question); 
    qImg.setText(question); 
    ImageView yes = (ImageView) findViewById(R.id.imageQuestions); 

    if (qImg.equals("aso")) 
     yes.setBackgroundResource(R.drawable.aso); 
    else if (qImg.equals("Pusa")) 
     yes.setBackgroundResource(R.drawable.pusa); 
    else if (qImg.equals("Daga")) 
     yes.setBackgroundResource(R.drawable.daga); 
} 

Теперь просто позвонить updateImages() сразу после, когда вы звоните setText() в вашем TextView.

Вы также можете назначить TextWatcher к TextView:

qImg.addTextChangedListener(new TextWatcher(){ 
    public void afterTextChanged(Editable s) {} 
    public void beforeTextChanged(CharSequence s, int start, int count, int after){} 
    public void onTextChanged(CharSequence s, int start, int before, int count){ 
     YourActivity.this.updateImages(); 
    } 
}); 
+0

Сэр Рагхав. Это не работает для меня. Изображение не меняется. – immaBeans

+0

Попробуйте заменить все qImg.equals на qImg.getText(). ToString(). Equals –

+0

whooo cool men it works. Могу ли я поблагодарить вас или что-то в этом роде. Большое спасибо. Это большая помощь :) – immaBeans

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