- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个带有复选框的应用程序,我该如何保存它们?
我的布局是:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/list_linear"
android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<ScrollView android:id="@+id/ScrollView01"
android:layout_width="fill_parent"
android:layout_height="match_parent">
<TableLayout
android:id="@+id/tableLayout1"
android:layout_height="match_parent"
android:layout_width="wrap_content">
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Ontbijtkoek" android:id="@+id/checkBox1" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Koekrepen" android:id="@+id/checkBox70" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Beschuit" android:id="@+id/checkBox69" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Chocolade" android:id="@+id/checkBox68" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Koekjes" android:id="@+id/checkBox67" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Brood" android:id="@+id/checkBox66" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Hagelslag puur" android:id="@+id/checkBox65" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Hagelslag mix" android:id="@+id/checkBox64" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Pindakaas" android:id="@+id/checkBox63" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Pasta" android:id="@+id/checkBox62" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Jam" android:id="@+id/checkBox61" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Thee" android:id="@+id/checkBox60" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Boter" android:id="@+id/checkBox59" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Smeerkaas" android:id="@+id/checkBox58" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Suiker" android:id="@+id/checkBox57" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Groente" android:id="@+id/checkBox56" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Fruit" android:id="@+id/checkBox55" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Aardappeltjes" android:id="@+id/checkBox54" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Zoutjes" android:id="@+id/checkBox53" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
<CheckBox android:textSize="30sp" android:background="@drawable/checkbox_background" android:button="@drawable/checkbox" android:text="Sapjes" android:id="@+id/checkBox52" android:layout_width="wrap_content" android:layout_height="wrap_content"></CheckBox>
</TableLayout>
</ScrollView>
</LinearLayout>
(是的,我现在有很多复选框)
我的 main.class 是:
package com.boodschappen;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.SharedPreferences;
import android.graphics.Color;
import android.graphics.Typeface;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.view.WindowManager;
import android.widget.CheckBox;
import android.widget.TextView;
public class main extends Activity {
@Override
public void onBackPressed() {
showDialog(MENU_EXIT);
super.onBackPressed();
}
private static final int MENU_SAVE = 0;
private static final int MENU_DIALOG = 2;
private static final int MENU_EXIT = 3;
private static final int MENU_LOAD = 1;
CheckBox een, v52, v53, v54, v55, v56, v57, v58, v59, z60, z61, z62, z63, z64, z65, z66, z67, z68, z69, z70 ;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
setContentView(R.layout.list);
Typeface fontFace = Typeface.createFromAsset(getAssets(), "fonts/ankehand.ttf");
TextView someText1 = (TextView)findViewById(R.id.checkBox1);
TextView someText52 = (TextView)findViewById(R.id.checkBox52);
TextView someText53 = (TextView)findViewById(R.id.checkBox53);
TextView someText54 = (TextView)findViewById(R.id.checkBox54);
TextView someText55 = (TextView)findViewById(R.id.checkBox55);
TextView someText56 = (TextView)findViewById(R.id.checkBox56);
TextView someText57 = (TextView)findViewById(R.id.checkBox57);
TextView someText58 = (TextView)findViewById(R.id.checkBox58);
TextView someText59 = (TextView)findViewById(R.id.checkBox59);
TextView someText60 = (TextView)findViewById(R.id.checkBox60);
TextView someText61 = (TextView)findViewById(R.id.checkBox61);
TextView someText62 = (TextView)findViewById(R.id.checkBox62);
TextView someText63 = (TextView)findViewById(R.id.checkBox63);
TextView someText64 = (TextView)findViewById(R.id.checkBox64);
TextView someText65 = (TextView)findViewById(R.id.checkBox65);
TextView someText66 = (TextView)findViewById(R.id.checkBox66);
TextView someText67 = (TextView)findViewById(R.id.checkBox67);
TextView someText68 = (TextView)findViewById(R.id.checkBox68);
TextView someText69 = (TextView)findViewById(R.id.checkBox69);
TextView someText70 = (TextView)findViewById(R.id.checkBox70);
someText1.setTypeface(fontFace); // only typeface
someText52.setTypeface(fontFace); // only typeface
someText53.setTypeface(fontFace); // only typeface
someText54.setTypeface(fontFace); // only typeface
someText55.setTypeface(fontFace); // only typeface
someText56.setTypeface(fontFace); // only typeface
someText57.setTypeface(fontFace); // only typeface
someText58.setTypeface(fontFace); // only typeface
someText59.setTypeface(fontFace); // only typeface
someText60.setTypeface(fontFace); // only typeface
someText61.setTypeface(fontFace); // only typeface
someText62.setTypeface(fontFace); // only typeface
someText63.setTypeface(fontFace); // only typeface
someText64.setTypeface(fontFace); // only typeface
someText65.setTypeface(fontFace); // only typeface
someText66.setTypeface(fontFace); // only typeface
someText67.setTypeface(fontFace); // only typeface
someText68.setTypeface(fontFace); // only typeface
someText69.setTypeface(fontFace); // only typeface
someText70.setTypeface(fontFace); // only typeface
een = (CheckBox) findViewById(R.id.checkBox1);
een.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
een.setTextColor(R.color.black);
} else {
een.setTextColor(Color.rgb(255,255,255));
}
}
});
v42 = (CheckBox) findViewById(R.id.checkBox52);
v42.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v42.setTextColor(R.color.black);
} else {
v42.setTextColor(Color.rgb(255,255,255));
}
}
});
v43 = (CheckBox) findViewById(R.id.checkBox53);
v43.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v43.setTextColor(R.color.black);
} else {
v43.setTextColor(Color.rgb(255,255,255));
}
}
});
v44 = (CheckBox) findViewById(R.id.checkBox54);
v44.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v44.setTextColor(R.color.black);
} else {
v44.setTextColor(Color.rgb(255,255,255));
}
}
});
v45 = (CheckBox) findViewById(R.id.checkBox55);
v45.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v45.setTextColor(R.color.black);
} else {
v45.setTextColor(Color.rgb(255,255,255));
}
}
});
v46 = (CheckBox) findViewById(R.id.checkBox56);
v46.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v46.setTextColor(R.color.black);
} else {
v46.setTextColor(Color.rgb(255,255,255));
}
}
});
v47 = (CheckBox) findViewById(R.id.checkBox57);
v47.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v47.setTextColor(R.color.black);
} else {
v47.setTextColor(Color.rgb(255,255,255));
}
}
});
v48 = (CheckBox) findViewById(R.id.checkBox58);
v48.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v48.setTextColor(R.color.black);
} else {
v48.setTextColor(Color.rgb(255,255,255));
}
}
});
v49 = (CheckBox) findViewById(R.id.checkBox59);
v49.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v49.setTextColor(R.color.black);
} else {
v49.setTextColor(Color.rgb(255,255,255));
}
}
});
v50 = (CheckBox) findViewById(R.id.checkBox60);
v50.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v50.setTextColor(R.color.black);
} else {
v50.setTextColor(Color.rgb(255,255,255));
}
}
});
v51 = (CheckBox) findViewById(R.id.checkBox61);
v51.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v51.setTextColor(R.color.black);
} else {
v51.setTextColor(Color.rgb(255,255,255));
}
}
});
v52 = (CheckBox) findViewById(R.id.checkBox62);
v52.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v52.setTextColor(R.color.black);
} else {
v52.setTextColor(Color.rgb(255,255,255));
}
}
});
v53 = (CheckBox) findViewById(R.id.checkBox63);
v53.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v53.setTextColor(R.color.black);
} else {
v53.setTextColor(Color.rgb(255,255,255));
}
}
});
v54 = (CheckBox) findViewById(R.id.checkBox64);
v54.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v54.setTextColor(R.color.black);
} else {
v54.setTextColor(Color.rgb(255,255,255));
}
}
});
v55 = (CheckBox) findViewById(R.id.checkBox65);
v55.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v55.setTextColor(R.color.black);
} else {
v55.setTextColor(Color.rgb(255,255,255));
}
}
});
v56 = (CheckBox) findViewById(R.id.checkBox66);
v56.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v56.setTextColor(R.color.black);
} else {
v56.setTextColor(Color.rgb(255,255,255));
}
}
});
v57 = (CheckBox) findViewById(R.id.checkBox67);
v57.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v57.setTextColor(R.color.black);
} else {
v57.setTextColor(Color.rgb(255,255,255));
}
}
});
v58 = (CheckBox) findViewById(R.id.checkBox68);
v58.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v58.setTextColor(R.color.black);
} else {
v58.setTextColor(Color.rgb(255,255,255));
}
}
});
v59 = (CheckBox) findViewById(R.id.checkBox69);
v59.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
v59.setTextColor(R.color.black);
} else {
v59.setTextColor(Color.rgb(255,255,255));
}
}
});
z60 = (CheckBox) findViewById(R.id.checkBox70);
z60.setOnClickListener(new OnClickListener(){
public void onClick(View v){
if(((CheckBox) v).isChecked()){
z60.setTextColor(R.color.black);
} else {
z60.setTextColor(Color.rgb(255,255,255));
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(0, MENU_SAVE, 0, "Opslaan");
menu.add(1,MENU_LOAD, 1, "Laden");
menu.add(2, MENU_DIALOG, 2, "About");
menu.add(3, MENU_EXIT, 3, "Exit");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MENU_SAVE:
Here i want to Save the Checkboxes
return true;
case MENU_LOAD:
Here i want to Load the Checkboxes
return true;
case MENU_DIALOG:
Dialog dialog = new Dialog(lidl.this);
dialog.setContentView(R.layout.custom_dialog);
dialog.setTitle("About");
dialog.setCancelable(true);
//there are a lot of settings, for dialog, check them all out!
//set up text
TextView text = (TextView) dialog.findViewById(R.id.text);
text.setText("Hallo, deze applicatie is een variant op Appie©. Deze applicatie is op volgorde van de winkel waar wij meestal onze boodschappen doen. Wilt u ook zo'n applicatie, ga dan naar het tabje Mail. Zet daarin welke winkel(s) het zijn, en wat u daar altijd koopt.");
dialog.show();
return true;
case MENU_EXIT:
AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);
alt_bld.setMessage("Weet je zeker dat je wilt afsluiten?")
.setCancelable(false)
.setPositiveButton("Ja", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
System.exit(0);
}
})
.setNegativeButton("Nee", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// Action for 'NO' Button
dialog.cancel();
}
});
AlertDialog alert = alt_bld.create();
// Title for AlertDialog
alert.setTitle("Exit");
alert.show();
return true;
}
return false;
}
}
你现在知道怎么做了吗?
希望你能理解我,也希望你能帮助我。
高维
编辑:
这是我想要保存和加载东西的代码:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(2, MENU_SAVE, 2, "Save");
menu.add(3, MENU_LOAD, 3, "Load");
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case MENU_SAVE:
Here save the checkboxes
return true;
case MENU_LOAD:
Here load the checkboxes
return true;
最佳答案
SharedPreferences怎么样? ?您可以以键:值格式存储和加载复选框的状态和名称。 How to use .
例如像这样:
// Init
SharedPreferences settings = getSharedPreferences("mysettings", 0);
SharedPreferences.Editor editor = settings.edit();
// Save
boolean checkBoxValue = v42.isChecked();
editor.putBoolean("v42", checkBoxValue);
editor.commit();;
// Load
v42.setChecked(settings.getBoolean("v42", false));
然而,您应该实现更有效的方法,可能是循环遍历所有复选框以读取其名称或 ID,您可以在离开 Activity 之前调用它们。
关于Android - 如何保存 CheckBox 的状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6800244/
我正在通读 Windows Phone 7.5 Unleashed,有很多代码看起来像这样(在页面的代码隐藏中): bool loaded; protected override void OnNav
在cgi服务器中,我这样返回 print ('Status: 201 Created') print ('Content-Type: text/html') print ('Location: htt
我正在查看 esh(easy shell)的实现,无法理解在这种情况下什么是 22 和 9 信号。理想情况下,有一个更具描述性的常量,但我找不到列表。 最佳答案 信号列表及其编号(包括您看到的这两个)
我的Oozie Hive Action 永远处于运行模式。 oozie.log文件中没有显示错误。
我正在编写一个使用 RFCOMM 通过蓝牙连接到设备的 Android 应用程序。我使用 BluetoothChat 示例作为建立连接的基础,大部分时间一切正常。 但是,有时由于出现套接字已打开的消息
我有一个云调度程序作业,它应该每小时访问我的 API 以更新一些价格。这些作业大约需要 80 秒才能运行。 这是它的作用: POST https://www.example.com/api/jobs/
我正在 Tomcat 上访问一个简单的 JSP 页面: 但是当我使用 curl 测试此页面时,我得到了 200 响应代码而不是预期的 202: $ curl -i "http://localhos
有时 JAR-RS 客户端会发送错误的语法请求正文。服务器应响应 HTTP status 400 (Bad Request) , 但它以 HTTP status 500 (Internal Serve
我正在尝试通过 response.send() 发送一个整数,但我不断收到此错误 express deprecated res.send(status): Use res.sendStatus(sta
我已经用 Excel 和 Java 做过很多次了……这次我需要用 Stata 来做,因为保存变量更方便'labels .如何将 dataset_1 重组为下面的 dataset_2? 我需要转换以下
我正在创建一个应用程序,其中的对象具有状态查找功能。为了提供一些上下文,让我们使用以下示例。 帮助台应用程序,其中创建作业并通过以下工作流程移动: 新 - 工作已创建但未分配 进行中 - 分配给工作人
我想在 Keras 中运行 LSTM 并获得输出和状态。在 TF 中有这样的事情 with tf.variable_scope("RNN"): for time_step in range
有谁知道 Scala-GWT 的当前状态 项目? 那里的主要作者 Grzegorz Kossakowski 似乎退出了这个项目,在 Spring 中从事 scalac 的工作。 但是,在 interv
我正在尝试编写一个 super 简单的 applescript 来启动 OneDrive App , 或确保打开,当机器的电源设置为插入时,将退出,或确保关闭,当电源设置为电池时。 我无法找到如何访问
目前我正在做这样的事情 link.on('click', function () { if (link.attr('href') !== $route.current.originalPath
是否可以仅通过查看用户代理来检测浏览器上是否启用/禁用 Javascript。 如果是,我应该寻找什么。如果否,检测用户浏览器是否启用/禁用 JavaScript 的最佳方法是什么 最佳答案 不,没有
Spring 和 OSGi 目前的开发状况如何? 最近好像有点安静了。 文档的最新版本 ( http://docs.spring.io/osgi/ ) 来自 2009 年。 我看到一些声明 Sprin
我正在从主函数为此类创建一个线程,但即使使用 Thread.currentThread().interrupt() 中断它,输出仍然包含“Still Here”行。 public class Writ
为了满足并发要求,我想知道如何在 Godog 中的多个步骤之间传递参数或状态。 func FeatureContext(s *godog.Suite) { // This step is ca
我有一个UIButton子类,它不使用UIImage背景,仅使用背景色。我注意到的一件事是,当您设置按钮的背景图像时,有一个默认的突出显示状态,当按下按钮时,该按钮会稍微变暗。 这是我当前的代码。
我是一名优秀的程序员,十分优秀!