时间:2015-06-13,14年毕业到现在,工作也快一年了,虽然在这一年里都是在从事android开发方面的工作,期间也学到了很多东西,对这个行业也有了更深入的了解,对很多基础知识点也得到了巩固和提升,对未接触过的网络通讯也有了一定的接触与把握,总体来说,这一年里,有多得,成长也是挺明显的。但距离一年前给自己定的目标(中级工程师)还有一定的距离,还没有能力完成这样的一个蜕变,因此这段时间都在努力去提升自己的开发技能,前几天还考虑过去培训机构接受系统的学习,但听取了前辈们的建议,他们觉着培训机构培训的对象更多的是偏向于未工作或者是非android开发行业的人,也就是培训的目的更多的是偏向于就业,而非实质性的开发能力的提升,因此放弃了这个想法;受一前辈指导,先通过每天编写100行以上真正属于自己的代码来提升自己的编码能力、质量、规范,前辈建议的原文如下:
最近项目需要使用CheckBox 与 Spinner 搭配起来使用,CheckBox用于对通道选择,Spinner用于对所选通道进行参数选择;主要涉及到两个知识点:
1.CheckBox选中与否的判断;
2.获取已选中CheckBox相对应的Spinner参数值;
先来看看布局效果图:很简单,就几个组件。
再来看看实现代码:
1 package com.example.threadandtasks; 2 3 import android.os.Bundle; 4 import android.app.Activity; 5 import android.util.Log; 6 import android.view.Menu; 7 import android.view.View; 8 import android.view.View.OnClickListener; 9 import android.widget.ArrayAdapter; 10 import android.widget.Button; 11 import android.widget.CheckBox; 12 import android.widget.CompoundButton; 13 import android.widget.Toast; 14 import android.widget.CompoundButton.OnCheckedChangeListener; 15 import android.widget.Spinner; 16 /** 17 * CheckBox 18 * 19 * Spinner 20 * 21 * 混合使用 22 * 23 * 2015-06-09 24 * */ 25 public class MainActivity extends Activity { 26 public CheckBox cb_Channeal1, cb_Channeal2; 27 public Spinner spinner_Channeal1, spinner_Channeal2; 28 public Spinner spinner_Channeal11, spinner_Channeal21; 29 public static final String[] m_arr = {"1000","2000","3000"}; 30 public Button btn_Data; 31 public int[] command = {0x12,0x33,0x44,0x45}; 32 33 @Override 34 protected void onCreate(Bundle savedInstanceState) { 35 super.onCreate(savedInstanceState); 36 setContentView(R.layout.activity_main); 37 initView(); 38 checkBoxListener(); 39 } 40 41 public void initView() { 42 cb_Channeal1 = (CheckBox) findViewById(R.id.cb_channel1); 43 spinner_Channeal1 = (Spinner) findViewById(R.id.spinner_channel1); 44 spinner_Channeal11 = (Spinner) findViewById(R.id.spinner_channel11); 45 cb_Channeal2 = (CheckBox) findViewById(R.id.cb_channel2); 46 spinner_Channeal2 = (Spinner) findViewById(R.id.spinner_channel2); 47 spinner_Channeal21 = (Spinner) findViewById(R.id.spinner_channel21); 48 49 ArrayAdapter<String> spinnerAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,m_arr); 50 spinnerAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//设置弹出框Item的布局 51 52 spinner_Channeal1.setAdapter(spinnerAdapter); 53 spinner_Channeal11.setAdapter(spinnerAdapter); 54 spinner_Channeal2.setAdapter(spinnerAdapter); 55 spinner_Channeal21.setAdapter(spinnerAdapter); 56 57 btn_Data = (Button) findViewById(R.id.button1); 58 btn_Data.setOnClickListener(new OnClickListener(){ 59 60 @Override 61 public void onClick(View arg0) { 62 // TODO 自动生成的方法存根 63 } 64 65 }); 66 } 67 68 public void checkBoxListener() { 69 cb_Channeal1.setOnCheckedChangeListener(checkBoxListener); 70 cb_Channeal2.setOnCheckedChangeListener(checkBoxListener); 71 } 72 public OnCheckedChangeListener checkBoxListener = (new OnCheckedChangeListener() { 73 74 @Override 75 public void onCheckedChanged(CompoundButton arg0, boolean isChecked) { 76 // TODO 自动生成的方法存根 77 switch (arg0.getId()){ 78 case R.id.cb_channel1:{ 79 if (isChecked) { 80 Toast.makeText(getApplicationContext(), "0 isChecked", 555) 81 .show(); 82 } else { 83 Toast.makeText(getApplicationContext(), "0 is not Checked", 84 555).show(); 85 } 86 };break; 87 case R.id.cb_channel2:{ 88 if (isChecked) { 89 Toast.makeText(getApplicationContext(), "1 isChecked", 555) 90 .show(); 91 } else { 92 Toast.makeText(getApplicationContext(), "1 is not Checked", 93 555).show(); 94 } 95 };break; 96 97 98 }; 99 100 } 101 102 }); 103 }