博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android按钮实例化,android按钮点击——implements View.OnClickListener
阅读量:6655 次
发布时间:2019-06-25

本文共 3123 字,大约阅读时间需要 10 分钟。

还可以使用如下方式进行button的响应,就是不使用匿名内部类,可以直接让当前类实现OnClickListener接口即可。下面是原来的方式,通过代码我们可以看到--该方法为每一个button对象都设置了监听实践,非常繁琐,那么简单的方法就是当前您类直接实现监听方法

package com.example.peipeng.litepal_demo;

import android.database.sqlite.SQLiteDatabase;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.Toast;

import org.litepal.LitePal;

public class MainActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

LitePal.initialize(this);

setContentView(R.layout.activity_main);

Button create = findViewById(R.id.create_database);

create.setOnClickListener(new View.OnClickListener(){

@Override

public void onClick(View v){

try{

SQLiteDatabase db = LitePal.getDatabase();

}catch (Exception e){

Toast.makeText(MainActivity.this,"create database wrong ",Toast.LENGTH_SHORT).show();

}

}

});

Button save = findViewById(R.id.save_data);

save.setOnClickListener(new View.OnClickListener(){

@Override

public void onClick(View v){

Album album = new Album();

album.setId(1);

album.setName("album");

album.setPrice(10.99f);

//album.setCover(getCoverImageBytes());

album.save();

Toast.makeText(MainActivity.this,"this save",Toast.LENGTH_SHORT).show();

}

});

Button show = findViewById(R.id.show_data);

show.setOnClickListener(new View.OnClickListener(){

@Override

public void onClick(View v){

//这里不清楚ID的值是多少,随便设置的ID,先尝试一下

try{

Album album = LitePal.find(Album.class,1);

Toast.makeText(MainActivity.this,"the name is "+album.getName(),Toast.LENGTH_LONG).show();

}catch (Exception e){

Toast.makeText(MainActivity.this,"something Wrong",Toast.LENGTH_SHORT).show();

}

}

});

}

}

下面是使用当前类实现onClickListener()接口的方式:

package com.example.peipeng.litepal_demo;

import android.database.sqlite.SQLiteDatabase;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.Toast;

import org.litepal.LitePal;

public class MainActivity extends AppCompatActivity implements View.OnClickListener{

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

LitePal.initialize(this);

setContentView(R.layout.activity_main);

Button create = findViewById(R.id.create_database);//实例化对象

Button save = findViewById(R.id.save_data);

Button show = findViewById(R.id.show_data);

create.setOnClickListener(this);//对该对象设置监听事件

save.setOnClickListener(this);

show.setOnClickListener(this);

}

@Override

public void onClick(View v){

switch (v.getId()){

case R.id.create_database:

LitePal.getDatabase();

break;

case R.id.save_data:

Album album = new Album();

album.setId(1);

album.setName("album");

album.setPrice(10.99f);

album.save();

Toast.makeText(MainActivity.this,"this save",Toast.LENGTH_SHORT).show();

case R.id.show_data:

try{

Album album1 = LitePal.find(Album.class,1);

Toast.makeText(MainActivity.this,"the name is "+album1.getName(),Toast.LENGTH_LONG).show();

}catch (Exception e){

Toast.makeText(MainActivity.this,"something Wrong",Toast.LENGTH_SHORT).show();

}

break;

}

}

}

转载地址:http://iytto.baihongyu.com/

你可能感兴趣的文章
MAC配置VSCODE的GO开发环境
查看>>
【VMware虚拟化解决方案】设计和配置VMware vCenter 5.5
查看>>
apache禁止记录指定类型的文件
查看>>
mysql常用操作(二)
查看>>
关于y=(++i)+(++i)+(++i)的问题
查看>>
我的友情链接
查看>>
ThinkPHP的静态化页面方法
查看>>
Oracle用户、权限、角色管理
查看>>
【noip系列——图论】货车运输
查看>>
Git之删除本地和远程项目
查看>>
《F4+2》—团队项目系统设计改进与详细设计
查看>>
经典排序算法 - 基数排序Radix sort
查看>>
Javascript小技巧,去掉小数位并且不会四舍五入
查看>>
MySQL5.7创建用户时报错
查看>>
c++链表
查看>>
Android相机使用(系统相机、自定义相机、大图片处理)
查看>>
20162321王彪 2017-2018-1 《程序设计与数据结构》第三周学习总结
查看>>
Shopex安装部署
查看>>
C语言头文件的使用
查看>>
我的友情链接
查看>>