2013-05-11 3 views
1

В настоящее время я разрабатываю приложение для Android с eclipse. В основном, мне нужно поместить текст над кнопкой изображения. Есть некоторые условные выражения для того, чтобы поместить текст поверх этого ImageButton, поэтому я не могу установить текст в XMLКак поместить текст поверх кнопки изображения не через xml

Это, как я установил ImageButton в XML:

<ImageButton 
    android:id="@+id/question1" 
    android:layout_width="150dip" 
    android:layout_height="50dip" 
    android:layout_gravity="center_vertical|center"/> 

Это, как я установите источник изображения и текст кнопки:

buttonQuestion1 = (ImageButton) findViewById(R.id.question1); 
TextView listContent = (TextView)findViewById(R.id.question1); 
String question1 = getQuestion.get(0); 

buttonQuestion1.setImageResource(R.drawable.button); 
listContent.setText(question1); 

Код для установки источника изображения работает нормально. Я использую TextView и setText, чтобы помещать текст поверх кнопки изображения, но когда я пытаюсь запустить его, приложение вылетает. Кто-нибудь знает, как правильно установить текст над кнопкой изображения?

+0

Возьмите TextView вместо ImageButton – Pragnani

ответ

1

Эта линия

TextView listContent = (TextView)findViewById(R.id.question1); 

дает ошибку, потому что R.id.question1 не TextView, что это ImageButton.

Вы можете использовать обычный <Button/> вместо макета для

<Button 
android:id="@+id/question1" 
android:layout_width="150dip" 
android:layout_height="50dip" 
android:layout_gravity="center_vertical|center"/> 

Если вы хотите, чтобы текст и изображения ресурса, вы можете позвонить

buttonQuestion1.setBackgroundResource(R.drawable.button); 
buttonQuestion1.setText(question1); 
+0

кнопки не имеют свойство ImageResource, у него есть справочная информация .. ImageResource отличается от фонового ресурса, ImageResource имеет дело с передним планом. – Pragnani

+0

Да, я исправил это. – Neoh

+0

Он работает! Спасибо за ваше решение .... –

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