MainActivity.java
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button startService;
private Button stopService;
private EditText editText=null;
private MyReceiver receiver=null;
private EditText username, password, positionName;
private SQLiteDatabase DB;
private ListView values;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
username = (EditText) findViewById(R.id.username);
password = (EditText) findViewById(R.id.userpwd);
positionName = (EditText) findViewById(R.id.positionName);
values = (ListView) findViewById(R.id.values_list);
DB = SQLiteDatabase.openOrCreateDatabase(getFilesDir() + "/info.db",
null);
editText=(EditText)findViewById(R.id.editText);
startService = (Button) findViewById(R.id.start_service);
stopService = (Button) findViewById(R.id.stop_service);
startService.setOnClickListener(this);
stopService.setOnClickListener(this);
// 长按删除
values.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// 获取所点击项的_id
TextView tv = (TextView) arg1.findViewById(R.id.tv_id);
final String id = tv.getText().toString();
// 通过Dialog提示是否删除
AlertDialog.Builder builder = new AlertDialog.Builder(
MainActivity.this);
builder.setMessage("确定要删除吗?");
// 确定按钮点击事件
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
delete(id);
replaceList();// 删除后刷新列表
}
});
// 取消按钮点击事件
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
return true;
}
});
// 点击更新
values.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// 获取_id,username,password项
TextView tvId = (TextView) arg1.findViewById(R.id.tv_id);
TextView tvName = (TextView) arg1
.findViewById(R.id.tv_username);
TextView tvPass = (TextView) arg1
.findViewById(R.id.tv_password);
TextView tvPName = (TextView) arg1
.findViewById(R.id.tv_positionName);
final String id = tvId.getText().toString();
String username = tvName.getText().toString();
String password = tvPass.getText().toString();
String positionName = tvPName.getText().toString();
// 通过Dialog弹出修改界面
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("修改");
// 自定义界面包括两个文本输入框
View v = View.inflate(MainActivity.this, R.layout.alertdialog,
null);
final EditText etName = (EditText) v
.findViewById(R.id.alert_name);
final EditText etPass = (EditText) v
.findViewById(R.id.alert_pass);
final EditText etPName = (EditText) v
.findViewById(R.id.alert_positionName);
// Dialog弹出就显示原内容
etName.setText(username);
etPass.setText(password);
etPName.setText(positionName);
builder.setView(v);
// 确定按钮点击事件
builder.setPositiveButton("保存", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
String newName = etName.getText().toString();
String newPass = etPass.getText().toString();
String newPName = etPName.getText().toString();
updata(newName, newPass, id, newPName);
replaceList();// 更新后刷新列表
}
});
// 取消按钮点击事件
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
}
});
builder.create().show();
}
});
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.start_service:
Intent startIntent = new Intent(this, MyService.class);
startService(startIntent); // 启动服务
//注册广播接收器
receiver=new MyReceiver();
IntentFilter filter=new IntentFilter();
filter.addAction(