设置界面逻辑编写
“关于”界面
package com.example.easycash; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; public class AboutActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_about); } public void onClick(View view) { finish(); } }
历史记录界面
package com.example.easycash; import androidx.appcompat.app.AppCompatActivity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ListView; import android.widget.TextView; import com.example.easycash.adapter.AccountAdapter; import com.example.easycash.db.AccountBean; import com.example.easycash.db.DBManager; import com.example.easycash.utils.CalendarDialog; import java.util.ArrayList; import java.util.Calendar; import java.util.List; public class HistoryActivity extends AppCompatActivity { ListView historyLv; TextView timeTv; List<AccountBean>mDatas; AccountAdapter adapter; int year,month; int dialogSelPos = -1; int dialogSelMonth = -1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_history); historyLv = findViewById(R.id.history_lv); timeTv = findViewById(R.id.history_tv_time); mDatas = new ArrayList<>(); // 设置适配器 adapter = new AccountAdapter(this,mDatas); historyLv.setAdapter(adapter); initTime(); timeTv.setText(year+"年"+month+"月"); loadData(year,month); setLVClickListener(); } /*设置ListView每一个item的长按事件*/ private void setLVClickListener() { historyLv.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { AccountBean accountBean = mDatas.get(position); deleteItem(accountBean); return false; } }); } private void deleteItem(final AccountBean accountBean) { final int delId = accountBean.getId(); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("提示信息").setMessage("您确定要删除这条记录么?") .setNegativeButton("取消",null) .setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { DBManager.deleteItemFromAccounttbById(delId); mDatas.remove(accountBean); //实时刷新,从数据源删除 adapter.notifyDataSetChanged(); } }); builder.create().show(); } /* 获取指定年份月份收支情况的列表*/ private void loadData(int year,int month) { List<AccountBean> list = DBManager.getAccountListOneMonthFromAccounttb(year, month); mDatas.clear(); mDatas.addAll(list); adapter.notifyDataSetChanged(); } private void initTime() { Calendar calendar = Calendar.getInstance(); year = calendar.get(Calendar.YEAR); month = calendar.get(Calendar.MONTH)+1; } public void onClick(View view) { switch (view.getId()) { case R.id.history_iv_back: finish(); break; case R.id.history_iv_rili: CalendarDialog dialog = new CalendarDialog(this,dialogSelPos,dialogSelMonth); dialog.show(); dialog.setDialogSize(); dialog.setOnRefreshListener(new CalendarDialog.OnRefreshListener() { @Override public void onRefresh(int selPos, int year, int month) { timeTv.setText(year+"年"+month+"月"); loadData(year,month); dialogSelPos = selPos; dialogSelMonth = month; } }); break; } } }
package com.example.easycash; import androidx.appcompat.app.AppCompatActivity; import android.app.AlertDialog; import android.content.DialogInterface; import android.os.Bundle; import android.view.View; import android.widget.Toast; import com.example.easycash.db.DBManager; public class SettingActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_setting); } public void onClick(View view) { switch (view.getId()) { case R.id.setting_iv_back: finish(); break; case R.id.setting_tv_clear: showDeleteDialog(); break; } } private void showDeleteDialog() { AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("删除提示") .setMessage("您确定要删除所有记录么?\n注意:删除后无法恢复,请慎重选择!") .setPositiveButton("取消",null) .setNegativeButton("确定", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { DBManager.deleteAllAccount(); Toast.makeText(SettingActivity.this,"删除成功!",Toast.LENGTH_SHORT).show(); } }); builder.create().show(); } }