自定义列表对话框(二)

main.xml如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="自定义列表对话框" />

</RelativeLayout>

dialog.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="10dip"
    android:paddingBottom="10dip"
    android:paddingLeft="5dip"
    android:paddingRight="5dip"
    android:background="@android:color/white"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/first"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:textSize="25sp"
        android:text="发送电子邮件" />

    <TextView
        android:id="@+id/second"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:layout_marginTop="10dip"
        android:textSize="25sp"
        android:text="分享到Twitter" />

    <TextView
        android:id="@+id/third"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:layout_marginTop="10dip"
        android:textSize="25sp"
        android:text="分享到FaceBook" />

</LinearLayout
    >

styles.xml如下:

<resources>
    <style name="AppBaseTheme" parent="android:Theme.Light"></style>
    <style name="AppTheme" parent="AppBaseTheme">
    </style>

    <style name="dialog" parent="@android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:backgroundDimEnabled">true</item>
        <item name="android:windowContentOverlay">@null</item>
    </style>

</resources>

mainActivity如下:

package c.c.testdialog;
import android.app.Activity;
import android.app.Dialog;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
/**
 * Demo描述:
 * 自定义列表对话框(自定义View中采用几个TextView)
 * 遇到的问题:
 * 自定义对话框有黑色边框
 * 解决办法:
 * 设置样式(style)
 *
 */
public class MainActivity extends Activity {
   private Button mButton;
   private TextView mFirstTextView;
   private TextView mSecondTextView;
   private TextView mThiredTextView;
   private View mDialogView;
   private Dialog mDialog;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		init();
	}
	private void init(){
		mButton=(Button) findViewById(R.id.button);
		mButton.setOnClickListener(new ClickListenerImpl());
		LayoutInflater  layoutInflater=(LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
		mDialogView=layoutInflater.inflate(R.layout.dialog, null);
		mFirstTextView=(TextView) mDialogView.findViewById(R.id.first);
		mFirstTextView.setOnClickListener(new ClickListenerImpl());
		mSecondTextView=(TextView) mDialogView.findViewById(R.id.second);
		mSecondTextView.setOnClickListener(new ClickListenerImpl());
		mThiredTextView=(TextView) mDialogView.findViewById(R.id.third);
		mThiredTextView.setOnClickListener(new ClickListenerImpl());
	}

	private class ClickListenerImpl implements OnClickListener {
		@Override
		public void onClick(View v) {
			switch (v.getId()) {
			case R.id.button:
				init();
				// 弹出自定义对话框
				mDialog=new Dialog(MainActivity.this, R.style.dialog);
				mDialog.setContentView(mDialogView);
				mDialog.show();
				break;
			case R.id.first:
				System.out.println("------> 第一个TextView");
				mDialog.dismiss();
				break;
			case R.id.second:
				System.out.println("------> 第二个TextView");
				mDialog.dismiss();
				break;
			case R.id.third:
				System.out.println("------> 第三个TextView");
				mDialog.dismiss();
				break;
			default:
				break;
			}

		}
	}

}

 

时间: 2024-11-13 09:41:19

自定义列表对话框(二)的相关文章

自定义列表对话框(一)

dialog.xml如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent&quo

listview-在一个自定义的对话框中如何使用一个 list view?

问题描述 在一个自定义的对话框中如何使用一个 list view? 我想在对话框中使用listview,我已经在xml文件中设置了listview,但是我不熟悉怎么使用它(我想用string array填充listview中的值). main java: package custom.dialouge.list;import android.app.Activity;import android.app.Dialog;import android.content.Context;import a

Word入门动画教程125:保存自定义列表样式

把自定义的多级符号列表保存在Normal模板中,这样,基于此模板新建的文档,就可以方便地调用这 种列表样式了. 第一步:自定义段落样式 自定义A.B.C.D4种段落样式,并保存到模板中,方法请参阅上一节. 如果文档中已使用要定义列表样式,可关闭此文档,新建文档,然后执行"格式 "→"项目符号和编号"→"多级列表"选项卡,选中此样式,再 单击"重新设置"按钮. 第二步:保存自定义多级符号列表 1.执行"格式"

listview-如何从自定义列表视图获得选中的项?

问题描述 如何从自定义列表视图获得选中的项? 程序中的自定义列表视图的每一行都包含许多TextViews,当我点击List Item时,OnListItemClick()没有被调用.如何获取一个自定义列表视图中选中的项? XML for Row: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/ap

WPF界面设计技巧(4)—自定义列表项样式

原文:WPF界面设计技巧(4)-自定义列表项样式   有前面修改按钮样式的基础,我们可以尝试来定制一个即好看又好用的 ListBox ,今天先来讲"好看"部分.   打开 Microsoft Visual Studio 2008 ,建立一个WPF应用程序,调整窗体大小,在窗体内创建一个 ListBox 和一个 Button ,按下图所示布局.   在  Window1.xaml 中为窗体 Loaded 事件及按钮 Click 事件添加事件处理:       Code<Window

Android零基础入门第39节:ListActivity和自定义列表项

原文:Android零基础入门第39节:ListActivity和自定义列表项    相信通过前两期的学习,以及会开发最简单的一些列表界面了吧,那么本期接着来学习更多方法技巧.     一.使用ListActivity       如果程序的窗口仅仅需要显示一个列表,则可以直接让Activity继承ListActivity来实现, ListActivity的子类无须调用setContentView()方法来显示某个界面,而是可以直接传入一个内容Adapter,ListActivity的子类就呈现

html中如何插入音乐播放器,可自定义列表,使用的软件是dreamweaver,求大神帮忙

问题描述 html中如何插入音乐播放器,可自定义列表,使用的软件是dreamweaver,求大神帮忙 html中如何插入音乐播放器,可自定义列表,使用的软件是dreamweaver,求大神帮忙 解决方案 html5的话,可以用video标签,否则用flash或者windows mediaplayer,嵌入object标签. 解决方案二: 代码你可以使用浏览器的查看源代码功能自己去你喜欢的网站抓,也可以google. 解决方案三: 要用第三方插件,如jplayerhttp://jplayer.or

Swift基础--使用TableViewController自定义列表

首先建立一个swift项目,把storyboard的内容删掉,添加一个Navigation Controller,然后设置storyboard对应界面的class,在Navigation Controller界面设置View Controller的is initial View Controller,这里使用的自定义列表内容,所以要新建一个继承UITableViewCell的类,然后设置storyboard中Table View的Prototype Cells的class,对于点击item进入详

SharePoint 2013如何定义自定义列表

SharePoint列表库,是我们使用过程中最常用的库,下面,我们简单介绍下代码定义自定义列表,主要是如何使用列表模板修改自带的几个展示页面. 1.新建项目,SharePoint空项目,如下图: 2.选择部署方式,场解决方案,如下图: 3.添加新项,选择列表,如下图: