android脚步---UI界面修改,增加按钮和监听
我的UU界面,其布局如下:
需要修改的部分:
意见反馈居中,还有增加backbutton
首先在mainactivity中找到我的UU的定义:dialogue
- public void showAboutDialog() {
- if(mAboutDialog == null) {
- LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- View aboutView = inflater.inflate(R.layout.aboutuu_layout, null, false);
- Button backBnt = (Button)aboutView.findViewById(R.id.backbutton);
- backBnt.setOnClickListener(mViewClickListener);
- TextView versionTxt = (TextView)aboutView.findViewById(R.id.versiontext);
- RelativeLayout versionCheckLayout = (RelativeLayout)aboutView.findViewById(R.id.checkversion);
- versionCheckLayout.setOnClickListener(mViewClickListener);
- RelativeLayout frameCheckLayout = (RelativeLayout)aboutView.findViewById(R.id.checkframe);
- frameCheckLayout.setOnClickListener(mViewClickListener);
- // RelativeLayout focusWbLayout = (RelativeLayout)aboutView.findViewById(R.id.focusweibo);
- // focusWbLayout.setOnClickListener(mViewClickListener);
- // RelativeLayout focusWxLayout = (RelativeLayout)aboutView.findViewById(R.id.focusweixin);
- // focusWxLayout.setOnClickListener(mViewClickListener);
- RelativeLayout marketScore = (RelativeLayout)aboutView.findViewById(R.id.toscore);
- marketScore.setOnClickListener(mViewClickListener);
- RelativeLayout contactsLayout = (RelativeLayout)aboutView.findViewById(R.id.contactus);
- contactsLayout.setOnClickListener(mViewClickListener);
- RelativeLayout fansLayout = (RelativeLayout)aboutView.findViewById(R.id.introtomyfriend);
- fansLayout.setOnClickListener(mViewClickListener);
- if(isNeedAd == true) {
- RelativeLayout rl_ad= (RelativeLayout)aboutView.findViewById(R.id.rl_ad);
- banner=new DiandeBanner(this,banner_AD_ID);
- if(banner != null) {
- // rl_ad=(RelativeLayout)findViewById(R.id.rl_ad);
- rl_ad.addView(banner);
- banner.show();
- }
- }
根据R.layout找到各个对应的xml文件
,意见反馈对应的是contactus.进入它的监听中,监听按键找到它的xml入口。
- OnClickListener mViewClickListener = new OnClickListener() {
- @Override
- public void onClick(View v) {
- switch(v.getId()) {
- case R.id.checkversion:
- UpdateManager manager = new UpdateManager(CameraActivity.this);
- if (manager.isNetworkConnected()) {
- manager.checkUpdate();
- } else {
- manager.showNetworkDialog();
- }
- break;
- case R.id.toscore:
- Uri uri = Uri.parse("market://details?id="+getPackageName());
- Intent intent = new Intent(Intent.ACTION_VIEW,uri);
- intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
- try {
- startActivity(intent);
- }catch(ActivityNotFoundException e) {
- CustomToast.showToast(CameraActivity.this, R.string.toast_appmarket_not_installed, Toast.LENGTH_SHORT);
- }
- break;
- case R.id.checkframe:
- if (mCurrentModule instanceof PhotoModule) {
- PhotoUI ui = ((PhotoModule) mCurrentModule).getPhotoUIInstance();
- if (ui != null) {
- PhotoFrameUpdateManager photoFrameManager =
- new PhotoFrameUpdateManager(CameraActivity.this, ui);
- if (photoFrameManager.isNetworkConnected()) {
- // photoFrameManager.checkUpdate();
- startActivityForResult(new Intent(CameraActivity.this, KuangDownloadActivity.class), REQ_CODE_DOWNLOAD);
- } else {
- photoFrameManager.showNetworkDialog();
- }
- }
- }
- break;
- case R.id.contact_weibo:
- followWB();
- break;
- case R.id.contact_weixin:
- showFollowWxDialog();
- break;
- case R.id.contactus:
- showContactsFunc();
- break;
- case R.id.contact_fans:
- showFansforumPage();
- break;
- case R.id.introtomyfriend:
- Intent recIntent = new Intent(Intent.ACTION_SEND);
- recIntent.setType("text/plain");
- recIntent.putExtra(Intent.EXTRA_TEXT, CameraActivity
- .this.getString(R.string.rec_app_msg)+Constants.UU_LINK_URI);
- startActivity(recIntent);
- break;
- case R.id.backbutton:
- if(mAboutDialog != null) {
- mAboutDialog.dismiss();
- mAboutDialog = null;
- }
- break;
- case R.id.backbutton1:
- if(mFeedBackDialog != null) {
- mFeedBackDialog.dismiss();
- mFeedBackDialog = null;
- }
- break;
- }
- }
- };
找到R.id.contact_weibo,点击进入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:orientation="vertical"
- android:background="#ffffff" >
- <RelativeLayout
- android:id="@+id/title"
- android:layout_height="@dimen/about_title_height"
- android:layout_width="match_parent"
- android:background="@color/aboutuu_title"
- >
- <TextView
- android:id="@+id/title_text"
- android:layout_width="match_parent"
- android:layout_height="@dimen/about_title_height"
- android:gravity="center"
- android:text="@string/contact_us"
- android:textColor="#ffffff"
- android:textSize="@dimen/about_title_text_size"
- android:background="@color/aboutuu_title"
- android:paddingLeft="@dimen/about_title_btn_margin_left"/>
- <Button
- android:id="@+id/backbutton1"
- android:layout_width="@dimen/about_title_height"
- android:layout_height="@dimen/about_title_height"
- android:layout_centerVertical="true"
- android:layout_marginLeft="@dimen/about_title_btn_margin_left"
- android:background="@drawable/about_back" />
- </RelativeLayout>
将其 android:gravity="center"变成居中,还有增加Button,因为增加Button后提示android:layout_centerVertical="true"应用于相对布局,所以将线性布局改成相对布局。布局文件修改iwanbi后在JAVA文件中增加监听:
- if(mFeedBackDialog == null) {
- LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
- View fbView = inflater.inflate(R.layout.feedback_layout, null, false);
- Button backBn = (Button)fbView.findViewById(R.id.backbutton1);
- backBn.setOnClickListener(mViewClickListener);
利用inflater引入布局文件,定义按钮,引用公共监听类,公共监听类中增加按钮backbutton1.
android脚步---UI界面修改,增加按钮和监听的更多相关文章
- android脚步---UI界面修改,关于activity中增加按钮和监听
增加按钮和监听,这个和上个不同在于,它不是在一个dialog里面,而是从新写了一个activity,因此需要先找到这个activity的入口. case R.id.checkframe: if (mC ...
- Android 给按钮添加监听事件
在安卓开发中,如果要给一个按钮添加监听事件的话,有以下三种实现方式 1.方式一 public class MainActivity extends ActionBarActivity { @Overr ...
- Android软键盘的隐藏显示、事件监听的代码
把开发过程中重要的一些内容片段做个珍藏,如下资料是关于Android软键盘的隐藏显示.事件监听的内容,应该是对小伙伴们有所用途. public class ResizeLayout extends L ...
- IOS第五天(1:取消按钮的监听和设置代理textField字数限制)
***********取消按钮的监听和设置代理textField字数限制 UITextFieldDelegate #import "HMViewController.h" @int ...
- Android开发之手势滑动(滑动手势监听)详解
Android开发之手势滑动(滑动手势监听)详解 在Android应用中,经常需要手势滑动操作,比如上下滑动,或左右方向滑动,处理手势滑动通常有两种方法:一种是单独实现setOnTouchListen ...
- android CheckBox控件的定义及事件监听
http://www.beijibear.com/index.php?aid=336 android CheckBox控件的定义及事件监听,本例实现CheckBox控件的定义及点击事件的监听并显示结果 ...
- Android TV开发中所有的遥控器按键监听及注意事项,新增home键监听
原文:Android TV开发中所有的遥控器按键监听及注意事项,新增home键监听 简单记录下android 盒子开发遥控器的监听 ,希望能帮到新入门的朋友们 不多说,直接贴代码 public cla ...
- Android——控制UI界面
一.使用XML布局文件控制UI界面 res\layout\activity_main.xml代码如下: <FrameLayout xmlns:android="http://schem ...
- Android控制UI界面
⒈使用XML布局文件控制UI界面[推荐] Android推荐使用XML布局文件来控制视图,这样不仅简单.明了,而且可以将应用的视图控制逻辑从Java或Kotlin代码中分离出来,放入XML文件中控制, ...
随机推荐
- Centos6.4 NFS的安装与配置
NFS,是Network File System的简写,即网络文件系统.网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS. NFS允许一个系统在网络上与他人共享目录和文件.通过使用N ...
- 第13章 Swing程序设计
1.Swing概述 GUI(图形用户界面)为程序提供图形界面,最初的设计目的是为程序员构建一个通用的GUI,使其能够在所有平台上运行.但Java 1.0中基础类AWT(抽象窗口工具箱)并没有达到这个要 ...
- vim编程配置方法
vim简介Vim 有以下几个模式:1) 正常(normal)模式,缺省的编辑模式:下面如果不加特殊说明,提到的命令都直接在正常模式下输入:任何其它模式中都可以通过键盘上的 Esc 键回到正常模式.2) ...
- javascript克隆一个对象
/* * 克隆一个对象 */ com.ty.repairtech.JsonOperation.clone = function(obj) { // Handle the 3 simple types, ...
- dns是什么
域名解析服务器,靠它把你要访问的网址找到然后把信息送到你电脑上.DNS 是域名系统 (Domain Name System) 的缩写,它是由解析器和域名服务器组成的.域名服务器是指保存有该网络中所有主 ...
- WPF中ListBox控件选择多个数据项
XAML: <Window x:Class="WpfApplication1.MainWindow" xmlns="http://schemas.microsoft ...
- Rar related CMD
recursively add folder Document to archive: (with all the files) rar a *.rar Document recursively ad ...
- MyBaits 错误分析
错误原因:在DAO的映射文件中,在映射标签中的type类型写成DAO类了,应该写成javaBean
- ssh The authenticity of host 192.168.0.xxx can't be established
用ssh登录一个机器(换过ip地址),提示输入yes后,屏幕不断出现y,只有按ctrl + c结束 错误是:The authenticity of host 192.168.0.xxx can't b ...
- java 读取URL中的资源
Example13_1.java import java.net.*; import java.io.*; import java.util.*; public class Example13_1 { ...