Я очень мало знаю о программировании. Я загрузил Android Studio и начал заниматься этим. Я попытался сделать приложение, которое они использовали в учебнике, и это сработало. Однако я попытался добавить к нему больше функций, и до сих пор не удалось. Извините меня, если вы видите ненужный барахло на моем коде, я просто пробую все сначала, и я чувствую себя немного ошибочным.Как сохранить текущее состояние коммутаторов в Android Studio?
В любом случае, на вопрос. У меня есть Switch (id: toggle_text) с действием OnClick (change_font). Когда переключатель переключается, он должен изменить размер шрифта другой активности с помощью намерения1. В настоящее время он не только не отправляет переменную размера шрифта (переменная сохраняет значение по умолчанию, которое вы положили на getIntExtra), но теперь, когда я попытался добавить способность сохранять текущее состояние, он просто показывает ошибки. Вот код:
package com.example.myfirstapp;
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.ToggleButton;
import android.widget.TextView;
import static com.example.myfirstapp.R.id.toggle_text;
import static com.example.myfirstapp.R.string.change_font;
public class ShowAnOption extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_show_an_option);
SharedPreferences sharedPrefs = getSharedPreferences("com.example.xyz", MODE_PRIVATE);
toggle.setChecked(sharedPrefs.getBoolean("NameOfThingToSave", true));
}
public void change_font(View v) {
int fssize;
if (toggle.isChecked())
{
SharedPreferences.Editor editor = getSharedPreferences("com.example.xyz", MODE_PRIVATE).edit();
editor.putBoolean("NameOfThingToSave", true);
editor.commit();
fssize=20;
}
else
{
SharedPreferences.Editor editor = getSharedPreferences("com.example.xyz", MODE_PRIVATE).edit();
editor.putBoolean("NameOfThingToSave", false);
editor.commit();
fssize=40;
}
Intent intent1 = new Intent (getBaseContext(), DisplayMessageActivity.class);
intent1.putExtra("Font_Size", fssize);
}
}
Он говорит, что «не может разрешить символ переключения» на toggle.setChecked() и если заявление. Что я могу сделать, чтобы исправить это? Кроме того, почему он не отправляется на другую деятельность? Вот код другой деятельности:
package com.example.myfirstapp;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.ViewGroup;
import android.widget.TextView;
public class DisplayMessageActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_display_message);
Intent intent = getIntent();
Intent intent1 = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
int Font_Size = intent1.getIntExtra("Font_Size",50);
TextView textView = new TextView(this);
textView.setTextSize(Font_Size);
textView.setText(message);
ViewGroup layout = (ViewGroup) findViewById(R.id.activity_display_message);
layout.addView(textView);
}
}
Спасибо и простите за долгое чтение. Если есть что-то еще, что нужно знать, дайте мне знать, и я с удовольствием покажу.