当前位置:  编程技术>移动开发
本页文章导读:
    ▪自定义FrameLayout 兑现屏幕一张张翻        自定义FrameLayout 实现屏幕一张张翻 http://wang-peng1.iteye.com/blog/995814 class PanelSwitcher extends FrameLayout { private static final int MAJOR_MOVE = 60; private static final int ANIM_DURATION = 400; private GestureDete.........
    ▪ (转)获取系统剩下内存        (转)获取系统剩余内存 原文:http://mingkg21.iteye.com/blog/605846 private String getAvailMemory( ){ ActivityManager am = (ActivityManager) getSystemService( Context.ACTIVITY_SERVICE ); MemoryInfo mi = new MemoryIn.........
    ▪ Activity其间消息传递简单示例       Activity之间消息传递简单示例 编写我们的心界面和对应的Activity类 文件名填写newui。 编写此界面对应的Activity类 package org.snailteam; import android.app.Activity; import android.os.Bundle; import android.view.V.........

[1]自定义FrameLayout 兑现屏幕一张张翻
    来源: 互联网  发布时间: 2014-02-18
自定义FrameLayout 实现屏幕一张张翻
http://wang-peng1.iteye.com/blog/995814
class PanelSwitcher extends FrameLayout {
    private static final int MAJOR_MOVE = 60;
    private static final int ANIM_DURATION = 400;
    private GestureDetector mGestureDetector;
    private int mCurrentView;
    private View mChild, mHistoryView;
    private View children[];
    private int mWidth;
    private TranslateAnimation inLeft;
    private TranslateAnimation outLeft;
    private TranslateAnimation inRight;
    private TranslateAnimation outRight;
    private static final int NONE  = 1;
    private static final int LEFT  = 2;
    private static final int RIGHT = 3;
    private int mPreviousMove;
    public PanelSwitcher(Context context, AttributeSet attrs) {
        super(context, attrs);
        mCurrentView = 0;
        mGestureDetector = new GestureDetector(context, new GestureDetector.SimpleOnGestureListener() {
                public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
                                       float velocityY) {
                    int dx = (int) (e2.getX() - e1.getX());
                    // don't accept the fling if it's too short
                    // as it may conflict with a button push
                    if (Math.abs(dx) > MAJOR_MOVE && Math.abs(velocityX) > Math.abs(velocityY)) {
                        if (velocityX > 0) {
                            moveRight();
                        } else {
                            moveLeft();
                        }
                        return true;
                    } else {
                        return false;
                    }
                }
            });
    }
    @Override 
    public void onSizeChanged(int w, int h, int oldW, int oldH) {
        mWidth = w;
        inLeft   = new TranslateAnimation(mWidth, 0, 0, 0);
        outLeft  = new TranslateAnimation(0, -mWidth, 0, 0);        
        inRight  = new TranslateAnimation(-mWidth, 0, 0, 0);
        outRight = new TranslateAnimation(0, mWidth, 0, 0);
        inLeft.setDuration(ANIM_DURATION);
        outLeft.setDuration(ANIM_DURATION);
        inRight.setDuration(ANIM_DURATION);
        outRight.setDuration(ANIM_DURATION);
    }
    protected void onFinishInflate() {
        int count = getChildCount();
        children = new View[count];
        for (int i = 0; i < count; ++i) {
            children[i] = getChildAt(i);
            if (i != mCurrentView) {
                children[i].setVisibility(View.GONE);
            }
        }
    }
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        mGestureDetector.onTouchEvent(event);
        return true;
    }
    @Override
    public boolean onInterceptTouchEvent(MotionEvent event) {
        return mGestureDetector.onTouchEvent(event);
    }
    void moveLeft() {
        //  <--
        if (mCurrentView < children.length - 1 && mPreviousMove != LEFT) {
            children[mCurrentView+1].setVisibility(View.VISIBLE);
            children[mCurrentView+1].startAnimation(inLeft);
            children[mCurrentView].startAnimation(outLeft);
            children[mCurrentView].setVisibility(View.GONE);
            mCurrentView++;
            mPreviousMove = LEFT;
        }
    }
    void moveRight() {
        //  -->
        if (mCurrentView > 0 && mPreviousMove != RIGHT) {
            children[mCurrentView-1].setVisibility(View.VISIBLE);
            children[mCurrentView-1].startAnimation(inRight);
            children[mCurrentView].startAnimation(outRight);
            children[mCurrentView].setVisibility(View.GONE);
            mCurrentView--;
            mPreviousMove = RIGHT;
        }
    }
    int getCurrentIndex() {
        return mCurrentView;
    }
}


    
[2] (转)获取系统剩下内存
    来源: 互联网  发布时间: 2014-02-18
(转)获取系统剩余内存
原文:http://mingkg21.iteye.com/blog/605846
    private String getAvailMemory( ){  
        ActivityManager am = (ActivityManager) getSystemService( Context.ACTIVITY_SERVICE );  
        MemoryInfo mi = new MemoryInfo( );  
        am.getMemoryInfo( mi );  
        return Formatter.formatFileSize( context, mi.availMem );  
    }  

  

    
[3] Activity其间消息传递简单示例
    来源: 互联网  发布时间: 2014-02-18
Activity之间消息传递简单示例

编写我们的心界面和对应的Activity类



文件名填写newui。



编写此界面对应的Activity类

package org.snailteam;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class ManagerUI extends Activity {
	private EditText message;
	private Button showMessage;
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.newui);
		message=(EditText)findViewById(R.id.message);
		showMessage=(Button)findViewById(R.id.showmessage);
		
		showMessage.setOnClickListener(new OnClickListener() {		 
			public void onClick(View view) {
				Bundle bundle = getIntent().getExtras();
				String username = bundle.getString("key_username");
				message.setText(username+"已经进入后台管理");
			}
		});
		 
	}
	

}

 注册我们的Activity类(用向导添加),AndroidManifest.xml文件会显示

<activity android:name=".ManagerUI"></activity>

 

回到我们的主程序中

package org.snailteam;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class application extends Activity {
	private EditText Username;
	private Button buttonLogin;
	private TextView title;

	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		Username = (EditText) findViewById(R.id.username);
		buttonLogin = (Button) findViewById(R.id.button_OK);
		title = (TextView) findViewById(R.id.title);
		buttonLogin.setOnClickListener(new OnClickListener() {
			public void onClick(View view) {
				//========================================================
				 Intent open =  new Intent();
				 Bundle bund = new  Bundle();
				 bund.putString("key_username",Username.getText().toString());
				 open.putExtras(bund);
				 open.setClass(application.this,ManagerUI.class);//我们要传递给的Activity类
				 startActivity(open);
				 //===========================================================
			}
		});
	}
}
 

 


    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3