我正在 Android Studio 2.0 (API 23) 中开发一个投票/投票应用程序。
场景:
我有一个 Activity ,显示字段(感兴趣的领域),其下方带有复选框,以表明已选择特定字段。(此处的字段是体育、娱乐、教育和技术)。用于确认、存储和重定向用户到他/她在复选框中选择的一个或多个 Activity 的按钮。
问题:
不可能(或者确实)在同时显示的不同 Activity 中显示用户“检查”的所有内容(这是困惑的)。 或者是否可以在具有文本字段(为空)的不同 Activity 中创建一种格式,并在用户勾选复选框并使用 setText() 函数处理空白文本时在运行时显示字段。 仅当用户按显示顺序选择复选框时,此功能才有效,如果用户选择第一个和第三个字段,则在运行时第二个字段将是空白区域(此处的 ScrollView 很明显)。
请详细提供正确的解决方案。 谢谢。
最佳答案
你的问题有点令人困惑,但据我了解,你可以用这种方式。
创建共享首选项。让用户在单击提交按钮后单击复选框,您将存储所需的值,如下所示:
public class UserPreference {
SharedPreferences pref;
// Editor for Shared preferences
SharedPreferences.Editor editor;
// Context
Context _context;
// Shared pref mode
int PRIVATE_MODE = 0;
// Sharedpref file name
private static final String PREF_NAME = "user_preference";
public static final String isSportsCheck = "isSportsChecked";
public static final String isTechnologyCheck = "isTechnologyChecked";
public UserPreference(Context context){
this._context = context;
pref = _context.getSharedPreferences(PREF_NAME, PRIVATE_MODE);
editor = pref.edit();
}
public void createWork(boolean sports, boolean tech){
editor.putBoolean(isSportsCheck, sports);
editor.putBoolean(isTechnologyCheck, tech);
editor.commit();
}
public HashMap<String, String> getWorkDetails(){
HashMap<String, String> user = new HashMap<String, String>();
user.put(isSportsCheck, pref.getBoolean(isSportsCheck, false));
user.put(isTechnologyCheck, pref.getBoolean(isTechnologyCheck, false));
return user;
}
现在,在您的另一个 Activity 中,将 ScrollView 放入 Parent,然后将高度和宽度作为 match_parent 的线性布局。然后是属于不同领域的不同布局,例如科技、体育。
然后在java类中:
@Override
public void onResume(){
super.onResume();
HashMap<String, String> user = userPreference.getWorkDetails();
boolean sports = user.get(userPreference.isSportsCheck);
boolean tech = user.get(userPreference.isTechnologyCheck);
if(sports){
sports_layout.setVisibility(View.VISIBLE);
load_sports_data();
..........
您可以采用这种模型方法并轻松加载数据。 不过,您也可以根据用户选择进行选项卡布局,然后在 OnResume 方法中设置选项卡。然后在每个选项卡中使用回收器 View 。
关于java - 如何在Android Studio中将检查 "check boxes"的结果显示到一个 Activity 中而不留任何空白?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36911687/