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文件中控制, ...
随机推荐
- Chapter 2 Open Book——13
"People in this town," he muttered. "Dr. Cullen is a brilliant surgeon who could prob ...
- hdu_1011_Starship Troopers(树形DP)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1011 题意:有N个房间,房间的连通性为树形的,就是说你要占领子结点,必须要先占领 父结点,每个房间有第 ...
- 多选出差同事id,拼接,去掉最后逗号
===========方法1 substr() ,永远都是.(第一个参数)开始位置.(第二个参数)截取个数 ,负数表示都后面开始数 substr($data['members'],0,strlen($ ...
- ieee80211_rx
ieee80211rx.c(E:\code\linux\net\ieee80211) 所有接收到的帧都送到这个函数中去 int ieee80211_rx(struct ieee80211_device ...
- Linq第三讲
LINQ 1.查询操作符 (1)源起 .net的设计者在IEnumerable<T>等接口基础之上定义了一系列的扩展方法来方便用户操作集合对象,这些扩展方法构成了LINQ的查询操作符 (2 ...
- 两台linux利用heartbeat+drbd 完美实现双机热备
一直想做基于linux的双机热备,一直没有时间和机会.一直以为只要做双机热备的实验就必须两台机器外接一个存储.甚至一个月以前在学习keepalived的时候还在琢磨keepalvied去掉哪些条件可以 ...
- MySQL SQL优化——分片搜索
DELIMITER $$ DROP PROCEDURE IF EXISTS `test_release`.`Sp_JP_A_NotifyBegin`$$ CREATE DEFINER=`encysys ...
- shell 入门教程
打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好. 一 惯例,第一个shell #!/bin/bash echo "Hello ...
- web项目的集成测试:模拟点击
利用模拟点击的方式进行集成测试,我们准备用google,Firefox和ie三种浏览器测试. 其中除了Firefox是模拟点击的鼻祖不需要插件外,谷歌和ie需要另外下载插件 chromedriver. ...
- Clock Pictures
Clock Pictures 题目描述 You have two pictures of an unusual kind of clock. The clock has n hands, each h ...