博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android 之GridView
阅读量:4291 次
发布时间:2019-05-27

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

public class HomeActivity extends Activity {    private GridView gd;private Myadapt adapt;private SharedPreferences sp;//标题private  static String[] names={"手机防盗","通讯卫士","软件管理","进程管理","流量统计","手机杀毒","缓存清理","高级工具","设置中心"};//图片    private  static int[] images={R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,            R.drawable.ic_launcher_background,};    private Button cancelBtn;    private Button okBtn;    private EditText enterPwdagin;    private EditText enterpwd;    private AlertDialog dialog;    @Override    public void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_home);//先保存一个密码,测试用        sp=getSharedPreferences("connfig",MODE_PRIVATE);        gd = findViewById(R.id.list_home);        adapt=new Myadapt();        gd.setAdapter(adapt);        //点击listview的每一个item        gd.setOnItemClickListener(new AdapterView.OnItemClickListener() {            @Override            public void onItemClick(AdapterView
parent, View view, int position, long id) { switch (position){ case 8://进入设置中心 Intent intent=new Intent(HomeActivity.this,SettingActivity.class); startActivity(intent); break; case 0://进入手机防盗gotophonesafe(); break; case 1://通讯卫士,黑名单gototongxunweishi(); break; case 2://软件管理enterRuanjianManager(); break; case 3: break; case 4: break; case 5: break; case 6: break; case 7://进入高级工具enterGreateTool(); break; } } }); } //软件管理 private void enterRuanjianManager() { Intent intent=new Intent(this,RuanjianManagerActivity.class); startActivity(intent); } //进入通讯卫士 private void gototongxunweishi() {Intent intent=new Intent(this,CallSmsSafeActivty.class);startActivity(intent); } //进入高级工具 private void enterGreateTool() {Intent intent=new Intent(this,GreatToolsActivity.class);startActivity(intent); } //没有设置密码就去设置密码,设置过密码就输入密码进入 protected void gotophonesafe(){ //设置过密码,弹出输入密码对话框 if(isSetupPwd()){ enterpasswordDialog(); }else{ //没有设置密码,弹出设置密码对话框showsetpasswordDialog(); } } //*********************设置密码对话框 private void showsetpasswordDialog(){ AlertDialog.Builder builder=new AlertDialog.Builder(HomeActivity.this); //自定义一个布局文件 View view=View.inflate(HomeActivity.this,R.layout.dialog_setpwd,null); enterpwd = view.findViewById(R.id.et_dialog_setpwd); enterPwdagin = view.findViewById(R.id.et_dialog_setpwdagin); okBtn = view.findViewById(R.id.btn_setpwd_sureBtn); cancelBtn = view.findViewById(R.id.btn_setpwd_cancelBtn); //取消cancelBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { dialog.dismiss(); }});//确定okBtn.setOnClickListener(new View.OnClickListener() { @SuppressLint("WrongConstant") @Override public void onClick(View view) {//取出密码 String enterpw= enterpwd.getText().toString().trim(); String enterpwagin= enterPwdagin.getText().toString().trim(); if(TextUtils.isEmpty(enterpw)||TextUtils.isEmpty(enterpwagin)){ Toast.makeText(getApplicationContext(),"密码不能为空", 0).show(); return; } if(enterpw.equals(enterpwagin)){ //保存密码,取消对话框,进入手机安全页 SharedPreferences.Editor editor=sp.edit(); editor.putString("password",enterpw); editor.commit(); dialog.dismiss(); //进入手机防盗页面 enterPhonesafe(); }else { Toast.makeText(getApplicationContext(),"密码不一至", 0).show(); return; } }}); builder.setView(view); builder.setCancelable(false);//设置点返回按钮和dialog外不起作用,一般做强制升级的时候才用; dialog = builder.show(); } //进入手机防盗页面 private void enterPhonesafe() {Intent intent=new Intent(this,PhonesafeActivity.class);startActivity(intent); } //*********************输入密码对话框 private void enterpasswordDialog(){ AlertDialog.Builder builder=new AlertDialog.Builder(HomeActivity.this); //自定义一个布局文件 View view=View.inflate(HomeActivity.this,R.layout.dialog_enterpwd,null); enterpwd = view.findViewById(R.id.et_dialog_setpwd); okBtn = view.findViewById(R.id.btn_setpwd_sureBtn); cancelBtn = view.findViewById(R.id.btn_setpwd_cancelBtn); //取消 cancelBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { dialog.dismiss(); } });//确定 okBtn.setOnClickListener(new View.OnClickListener() { @SuppressLint("WrongConstant") @Override public void onClick(View view) {//取出密码 String enterpw= enterpwd.getText().toString().trim();String savepwd=sp.getString("password",""); if(TextUtils.isEmpty(enterpw)){ Toast.makeText(getApplicationContext(),"密码不能为空", 0).show(); return; } if(enterpw.equals(savepwd)){ dialog.dismiss(); //进入手机防盗页面 enterPhonesafe(); }else { Toast.makeText(getApplicationContext(),"密码错误", 0).show(); enterpwd.setText(""); return; } } }); builder.setView(view); builder.setCancelable(false);//设置点返回按钮和dialog外不起作用,一般做强制升级的时候才用; dialog = builder.show(); } //判断是否设置过密码 private boolean isSetupPwd(){String password=sp.getString("password",""); return !TextUtils.isEmpty(password); } //定义适配器 private class Myadapt extends BaseAdapter {//多少个 @Override public int getCount() { return names.length; } @Override public Object getItem(int position) { return null; }//点击的时候获取某一条的对象 @Override public long getItemId(int position) { return 0; }//每一个的view @Override public View getView(int position, View convertView, ViewGroup parent) { View v=View.inflate(getApplicationContext(),R.layout.list_item_home,null); //设置图片 ImageView imagev=v.findViewById(R.id.list_Item_home_imagev);imagev.setImageResource(images[position]); //设置图片下的标题 TextView tv=v.findViewById(R.id.list_item_home_tv); tv.setText(names[position]); return v; } }}

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

你可能感兴趣的文章
Linux 互斥锁、原子操作实现原理
查看>>
搭建简单hls直播测试服务
查看>>
共享内存的数据同步
查看>>
LVS-入门试用
查看>>
Cache和Buffer的区别
查看>>
50个sql语句
查看>>
MYSQL sql 语句性能分析
查看>>
C++操作Redis数据库
查看>>
python yield用法
查看>>
python pipe模块用法
查看>>
安装完 MySQL 后必须调整的 10 项配置
查看>>
开发者必备的 12 个 JavaScript 库
查看>>
http错误码
查看>>
python 多线程
查看>>
sipp命令 各参数含义
查看>>
搜集的动植物分类、检索网站
查看>>
ffmpeg源码分析之媒体打开过程
查看>>
Ubuntu/centos/redhat/SUSE sipp安装(带rtp支持,3.5.1版本)
查看>>
周鸿祎:很多程序员聪明,但我一看就知道他不会成功
查看>>
编译程序遇到问题 relocation R_X86_64_32 against `.rodata' can not be used when making a shared object;
查看>>