2014-06-09 3 views
0

Это, вероятно, очень легко для большинства из вас, ребята, но так как я все еще новичок, у меня проблемы с этим. Во всяком случае, я хочу, чтобы изображение показывалось при щелчке по тексту. Я знаю, как настроить onClickListener, но не знаю, как заставить изображение отображаться в результате нажатия на текст. Какой метод я бы использовал для этого? Это фиксированное изображение, которое у меня есть в моей доступной папке. СпасибоAndroid показать картинку на TextView нажмите

+0

вы хотите изображение, которое будет показано от ваших Android ресурсов? – Umitk

+0

Да. Изображение находится в выпадающей папке. – Restnom

ответ

0

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

пример:

<ImageView 
    android:id="@+id/imageViewCompass" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:src="@drawable/mwImage" 
    android:visibility="invisible" /> 

Внутри OnClick вашей кнопки, то вы можете установить ImageView visility к видимым;

yourImageView.setVisibility(View.VISIBLE); 
+0

Я попробую это. Это кажется достаточно простым. Благодарю. EDIT: Хорошо, поэтому, хотя это действительно работает, мне хотелось, чтобы изображение всплывало отдельно, потому что использование трюка видимости по-прежнему занимает место в макете xml и для чего я пытаюсь сделать, я в конечном итоге «невидимых изображений» или пробелов, которые заставят его выглядеть уродливым. – Restnom

0

После того, как вы вставили изображение в вводимого коэффициента, установите ImageView в своем .xml как:

<ImageView 
android:layout_width="" 
android:layout_height="" 
android:id="@+id/image" 
android:src="@drawable/imagelocation" 
android:visibility="invisible" /> 

Тогда в классе деятельности, сделайте следующее:

public class Templates extends Activity { 

Button btnimage; 
ImageView image; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 

super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 

image = (ImageView) findViewById(R.id.image); 
btnimage = (Button) findViewById(R.id.btnimage); 

btnimage.setOnClickListener(new View.OnClickListener() { 

@Override 
public void onClick(View v) { 

image.setVisibility(View.VISIBLE); 

     } 
    }); 
} 

UPDATE:

Да, в диалоговом окне можно отобразить ImageView. Следуйте за этим:

Dialog settingsDialog = new Dialog(this); 
settingsDialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); 
settingsDialog.setContentView(getLayoutInflater().inflate(R.layout.image_layout, null)); 
settingsDialog.show(); 

Тогда ваш .xml должен выглядеть примерно так:

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:orientation="vertical"> 
<ImageView 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:src="YOUR IMAGE"/> 
<Button 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="Show Image" android:onClick="dismissListener"/> 
</LinearLayout> 
+0

Спасибо за помощь, но мне просто сказали это другим пользователем. Единственная проблема с этим методом заключается в том, что изображения невидимы, они все еще занимают место в макете xml. Для моего приложения у меня будет много невидимых изображений, из-за которых макет будет выглядеть уродливым из-за всех пустых пространств. Итак, можете ли вы помочь мне заставить изображение появляться на экране при щелчке текста, а не просто изменять видимость? – Restnom

+0

Или, если есть способ установить размер на что-то достаточно маленькое, чтобы невидимые изображения не занимали слишком много места и внутри метода onclick я мог переключать видимость и увеличивать изображение до его первоначального размера? – Restnom

+0

см. Мой обновленный ответ. – Umitk

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