android按钮监听跳转页面,Android(1)-----单击按钮更换背景,事件监听,页面切换Intent,intent消息传递...

1、单击按钮更换背景

2、基本布局介绍

android:textAlignment="center"//控件对齐

android:gravity="center"//文字对齐

android:orientation="horizontal"//LinearLayout 的水平排列

android:layout_gravity="center" //控件的居中

android:inputType="textPassword" //设置为密码框

android:src="@drawable/char1" //设置imageView 的图片

例子:实现了水平并排和居中

android:layout_width="match_parent"

android:layout_height="wrap_content">

android:text="其他:"

android:layout_marginLeft="40dp"

android:textSize="20dp"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

android:hint="请输入"

android:layout_marginRight="40dp"

android:layout_weight="1"

android:layout_width="wrap_content"

android:layout_height="wrap_content" />

3、事件监听:

4、页面切换Intent:

A、新建java.class:MainActivity2.class,相对应还要建XML文件

在事件监听器写如下代码:

Intent intent1=new Intent(MainActivity.this,MainActivity2.class);//参数: 当前页面,要跳转到的页面的class文件

intent1.putExtra("name",editText_name.getText());//参数:key用于识别;要传递的字符串

startActivity(intent1);//注:和接收码startActivityForResult()作用一样。

B、在AndroidManifest对java.class进行注册

C、接受消息

Intent intent2=getIntent();

name=intent2.getStringExtra("name");

5、请求码和接受码的使用:

点击跳转的事件监听中把startActivity(intent1)替换成:

startActivityForResult(intent1,4836);//接受码

点击跳转回来的事件监听

Intent intent2=new Intent(MainActivity2.this,MainActivity.class);

intent2.putStringArrayListExtra("arrayList_hobby",arrayList_hobby);

setResult(4837,intent2);//请求码

finish();

6、数据库的使用:6_1、继承extends SQLiteOpenHelper

6_2、重写构造器

//用于创建数据库

private static final String DB_NAME="db_user";private static final int DB_VERSION=1;publicDatabaseHelper(Context context) {super(context, DB_NAME, null,DB_VERSION);//创建数据库

}

6_3、重写两个方法:

@Overridepublic voidonCreate(SQLiteDatabase db) {

}

@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, intnewVersion) {

}

6_4、创建表结构: 要在SQL语句的连接 记得加上对应空格

//用于创建表和表结构

private static final String TABLE_USER="users";private static final String COL_ID="id";private static final String COL_USERNAME="username";private static final String COL_PWD="pwd";

//要在SQL语句的连接 记得加上对应空格private static final String sql=" create table "+TABLE_USER+"( "+COL_ID+" integer primary key autoincrement, "+COL_USERNAME+" text, "+COL_PWD+" text "+")";

@Overridepublic voidonCreate(SQLiteDatabase db) {//创建表

Log.i("db","onCreate");//String sql="create table"+TABLE_USER+"("+COL_ID+"integer primary key autoincrement,"+COL_USERNAME+"text,"+COL_PWD+"text"+")";

db.execSQL(sql);

}

6_5 增加数据,查询数据

//插入数据

public booleanadd(Users users){

SQLiteDatabase db=this.getReadableDatabase();

ContentValues values=newContentValues();

values.put(COL_USERNAME,users.getUserName());

values.put(COL_PWD,users.getPwd());double flag=0;try{

flag=db.insert(TABLE_USER,null,values);

}catch(Exception e){

Log.i("DatabaseError", e.getMessage());

}if (flag>0)return true;return false;

}//查询数据1

public ArrayListgetAllDAata(){

ArrayList list=new ArrayList<>();

SQLiteDatabase db=this.getReadableDatabase();//游标

Cursor cursor=null;

cursor=db.rawQuery("select * from "+TABLE_USER,null);if(cursor!=null &&cursor.moveToFirst()){do{

Users users=newUsers();

users.setId(cursor.getInt(cursor.getColumnIndex(COL_ID)) );

users.setPwd(cursor.getString(cursor.getColumnIndex(COL_PWD)));//注意这里是getString

users.setUserName(cursor.getString(cursor.getColumnIndex(COL_USERNAME)));//得到列名的索引,再根据索引得到内容

list.add(users);

}while(cursor.moveToNext());

}if(cursor!=null){

cursor.close();//用来关闭游标

}returnlist;

}

7、SharedPreferences()的使用 :用来保存用户的设置

记得最后要进行应用,不应用用不了 editor.apply();//需要对editor进行应用

代码的基本知识点:

editText_name.getText().length()==0 //用来判断输入框是否为空

editText_name.getText().toString() //得到输入框的内容

if(register_userPwd.getText().toString().equals(register_againUserPwd.getText().toString()) ){//getText()进行toString才能使用equal()

sideIndex.setBackgroundColor(Color.parseColor("#8a8a8a")); //设置字体颜色

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值