• 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.

  • 相关阅读:
    判断质数
    猜拳三局两胜
    输入年月日判断是这一年的哪一天
    switch case
    猜拳
    判断年月日是否正确
    老狼老狼几点了
    判断是否中奖
    平滑部署war包到tomcat-deploy.sh
    只用120行Java代码写一个自己的区块链-3挖矿算法
  • 原文地址:https://www.cnblogs.com/Anita9002/p/3988936.html
Copyright © 2020-2023  润新知