-
仿IOS 对话框
package com.zf.iosdialog.widget;import android.app.Dialog;import android.content.Context;import android.view.Display;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.view.WindowManager;import android.widget.Button;import android.widget.FrameLayout;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.LinearLayout.LayoutParams;import android.widget.TextView;import com.zf.iosdialog.R;public class AlertDialog {private Context context;private Dialog dialog;private LinearLayout lLayout_bg;private TextView txt_title;private TextView txt_msg;private Button btn_neg;private Button btn_pos;private ImageView img_line;private Display display;private boolean showTitle = false;private boolean showMsg = false;private boolean showPosBtn = false;private boolean showNegBtn = false;public AlertDialog(Context context) {this.context = context;WindowManager windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);display = windowManager.getDefaultDisplay();}public AlertDialog builder() {// 获取Dialog布局View view = LayoutInflater.from(context).inflate(R.layout.view_alertdialog, null);// 获取自定义Dialog布局中的控件lLayout_bg = (LinearLayout) view.findViewById(R.id.lLayout_bg);txt_title = (TextView) view.findViewById(R.id.txt_title);txt_title.setVisibility(View.GONE);txt_msg = (TextView) view.findViewById(R.id.txt_msg);txt_msg.setVisibility(View.GONE);btn_neg = (Button) view.findViewById(R.id.btn_neg);btn_neg.setVisibility(View.GONE);btn_pos = (Button) view.findViewById(R.id.btn_pos);btn_pos.setVisibility(View.GONE);img_line = (ImageView) view.findViewById(R.id.img_line);img_line.setVisibility(View.GONE);// 定义Dialog布局和参数dialog = new Dialog(context, R.style.AlertDialogStyle);dialog.setContentView(view);// 调整dialog背景大小lLayout_bg.setLayoutParams(new FrameLayout.LayoutParams((int) (display.getWidth() * 0.85), LayoutParams.WRAP_CONTENT));return this;}public AlertDialog setTitle(String title) {showTitle = true;if ("".equals(title)) {txt_title.setText("标题");} else {txt_title.setText(title);}return this;}public AlertDialog setMsg(String msg) {showMsg = true;if ("".equals(msg)) {txt_msg.setText("内容");} else {txt_msg.setText(msg);}return this;}public AlertDialog setCancelable(boolean cancel) {dialog.setCancelable(cancel);return this;}public AlertDialog setPositiveButton(String text,final OnClickListener listener) {showPosBtn = true;if ("".equals(text)) {btn_pos.setText("确定");} else {btn_pos.setText(text);}btn_pos.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {listener.onClick(v);dialog.dismiss();}});return this;}public AlertDialog setNegativeButton(String text,final OnClickListener listener) {showNegBtn = true;if ("".equals(text)) {btn_neg.setText("取消");} else {btn_neg.setText(text);}btn_neg.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {listener.onClick(v);dialog.dismiss();}});return this;}private void setLayout() {if (!showTitle && !showMsg) {txt_title.setText("提示");txt_title.setVisibility(View.VISIBLE);}if (showTitle) {txt_title.setVisibility(View.VISIBLE);}if (showMsg) {txt_msg.setVisibility(View.VISIBLE);}if (!showPosBtn && !showNegBtn) {btn_pos.setText("确定");btn_pos.setVisibility(View.VISIBLE);btn_pos.setBackgroundResource(R.drawable.alertdialog_single_selector);btn_pos.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {dialog.dismiss();}});}if (showPosBtn && showNegBtn) {btn_pos.setVisibility(View.VISIBLE);btn_pos.setBackgroundResource(R.drawable.alertdialog_right_selector);btn_neg.setVisibility(View.VISIBLE);btn_neg.setBackgroundResource(R.drawable.alertdialog_left_selector);img_line.setVisibility(View.VISIBLE);}if (showPosBtn && !showNegBtn) {btn_pos.setVisibility(View.VISIBLE);btn_pos.setBackgroundResource(R.drawable.alertdialog_single_selector);}if (!showPosBtn && showNegBtn) {btn_neg.setVisibility(View.VISIBLE);btn_neg.setBackgroundResource(R.drawable.alertdialog_single_selector);}}public void show() {setLayout();dialog.show();}}
- 2015-01-03下载
- 积分:1
-
人脸识别APP代码
人脸识别APP代码,安卓开发环境,手机端识别人脸。
人脸识别APP代码,安卓开发环境,手机端识别人脸。
- 2022-07-02 19:37:58下载
- 积分:1
-
Android 系统pedometer计步器源码
Android 系统pedometer计步器源码,或者叫做步数计,计数器,微信步数计数器,本源码是android上的开源项目pedometer 的完整源代码,来自国外,注释为英文,可以国内用户开发基于Android的计步器提供一些原始资料。
- 2022-08-02 20:14:25下载
- 积分:1
-
AuthenticatorDescription
A Parcelable value type that contains information about an account authenticator for Andriod.
- 2013-10-21 16:23:50下载
- 积分:1
-
Alakazam-master
Wifi location Android
- 2014-12-16 07:05:26下载
- 积分:1
-
android-developer-fundamentals
android developer fundamentals course practicals
- 2019-04-12 02:43:39下载
- 积分:1
-
Android 仿微信按住按钮语音发送实现聊天对话
Android仿微信语音对话聊天的实现,按住 按钮后可录音并发放语音,可播放动画、播放音频,仿微信那样如果前一下正在播放,当点另一个,会先把前一个正在播放的停掉,录音完成后的回调,获取音量大小的Runnable,判断手指的横坐标是否超出按钮的范围,改变文本内容及button的背景色。一些技巧值得学习:
设置MediaRecorder的音频源为麦克风,设置音频的格式,设置音频的编码为amr,随机生成文件的名,mMediaRecorder.getMaxAmplitude()的取值范围:1-32767。只有准备完毕了,AudioRecorderButton才会计时并显示dialog。
手指上滑,取消发送,松开手指,取消发送,通过level去更新voice上的图片
技巧,避免使用switch的冗余代码。
- 2022-01-26 00:53:55下载
- 积分:1
-
手机二维码扫描
针对当前超市结账拥挤的现象,结合时下新兴的二维码技术。
项目是基于谷歌的zxing包,通过eclispe修改,移植到andorid系统,并且添加了计价的功能,并通过蓝牙技术现手机与前台系统同步的功能。
这是一个简单的二维码扫描软件,很适合新手学习,希望能帮到大家。
- 2022-02-16 04:20:02下载
- 积分:1
-
Android
- 2022-03-03 21:22:03下载
- 积分:1
-
手机来电监控,黑名单管理
这个demo主要是手机黑名单管理,你可以从通讯录添加那黑名单,复选框勾选更多。这样来电的时候直接拒接,还有打电话拨号的功能,别而忘了添加权限READ_PHONE_STATE,ACCESS_COARSE_LOCATION,,READ_CONTACTS,CALL_PHONE。还提供了一个NeighboringCellInfo.aidl
- 2022-06-01 15:23:55下载
- 积分:1