如何在单击textview时添加弹出图像?

时间:2014-02-23 19:57:45

标签: android

questions.xml

<?xml version="1.0" encoding="utf-8"?>

    <ScrollView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/scrollView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@drawable/footer" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/warning"
            android:textAppearance="?android:attr/textAppearanceMedium" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <CheckBox
            android:id="@+id/q1a"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textSize="15sp"
            android:textStyle="bold"
            android:textColor="#000000"
            android:text="@string/sas1"
            android:textAppearance="?android:attr/textAppearanceSmall" />

    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <CheckBox
            android:id="@+id/q2a"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/sas2"
            android:textStyle="bold"
            android:textColor="#000000"
            android:textSize="15sp"
            android:textAppearance="?android:attr/textAppearanceSmall" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <CheckBox
            android:id="@+id/q3a"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/sas3"
            android:textStyle="bold"
            android:textColor="#000000"
            android:textSize="15sp"
            android:textAppearance="?android:attr/textAppearanceSmall" />
    </LinearLayout>



    </ScrollView>

如何点击文本视图时弹出一个弹出图像?

例如..i点击第一个文本视图,图像将显示2或3秒然后它会消失,然后当我点击第二个文本视图时,另一个不同的图像也会出现2或3秒.. < / p>

问题#1 =发烧=那么它会显示发烧的示例图像 问题#2 =皮肤皮疹=然后它会显示皮肤皮疹看起来像的示例图像。

注意:永远不要勾选复选框。重要的是textview。

2 个答案:

答案 0 :(得分:0)

这很容易......

TextView实施onClick侦听器,然后在点击时以自定义AlertDialog显示图像。我自己的意思是,在AlertDialog添加自定义视图,其中包含ImageView以显示您的图片。

现在使用Runnable在几秒钟后解除AlertDialog

答案 1 :(得分:0)

这也可以(如果我理解你的话)通过使用警报对话框,如下例所示:

在onCreate()活动主方法或TextView动作侦听器上,调用此代码,如简单示例

    ImageView image=new ImageView(this);
    image.setImageResource(R.drawable.ic_launcher);

    loadPhoto(image,100,100);
    final Timer t = new Timer();
    t.schedule(new TimerTask() {
        public void run() {
              ad.dismiss(); // when the task active then close the dialog
              t.cancel(); // also just top the timer thread, otherwise, you may receive a crash report
        }
    }, 5000); // after 5 second (or 5000 miliseconds), the task will be active.

loadPhoto 方法:

   public void loadPhoto(ImageView imageView, int width, int height) {

   ImageView tempImageView = imageView;
   imageDialog = new AlertDialog.Builder(this);
   imageDialog.setCancelable(true);
   LayoutInflater inflater = (LayoutInflater) this.getSystemService(LAYOUT_INFLATER_SERVICE);

   View layout = inflater.inflate(R.layout.custom_fullimage_dialog,
           (ViewGroup) findViewById(R.id.layout_root));
   ImageView image = (ImageView) layout.findViewById(R.id.fullimage);
   image.setImageDrawable(tempImageView.getDrawable());
   imageDialog.setView(layout);
   imageDialog.setPositiveButton("", new DialogInterface.OnClickListener() {

       public void onClick(DialogInterface dialog, int which) {
           dialog.dismiss();
       }

   });
   ad=imageDialog.create();
   ad.show();     
}

广告变量在类中声明为:

 public AlertDialog ad;

自定义提醒对话框 custom_fullimage_dialog xml代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_root" android:orientation="horizontal"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:padding="10dp">

<ImageView android:id="@+id/fullimage" 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
</ImageView>

<TextView android:id="@+id/custom_fullimage_placename"
    android:layout_width="wrap_content" android:layout_height="fill_parent"
    android:textColor="#FFF">
</TextView>

<强>进口

import android.app.Activity;
import android.app.AlertDialog;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.AsyncTask;
import android.os.Bundle;
import android.text.format.Formatter;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.Timer;
import java.util.TimerTask;
祝你好运!