如何打开条款和条件" ACTIVITY" Android Studio中的(不是DIALOG BOX)?

时间:2018-05-21 12:59:16

标签: android

我开发了一个应用程序,我希望将我的第一页作为条款和条件活动,然后如果用户接受它,则再也不会在该设备上显示。如果用户拒绝条款和条件"活动"每次申请开始时都会显示。

我的问题是"我该如何实现代码?"

我做了一个共享偏好布尔检查,但问题是ACTIVITY只打开一次,即使用户没有点击接受按钮,它也不会在第二次运行中显示。

请帮我解决这个问题?

查看我的代码

$original_array = Array(
    '53_0.1',
    '53_0.3',
    '54_0.2',
    '54_0.1',    
    '54_0.1',
    '54_0.19',
    '56_0.19',
    '56_0.50'
);

foreach ($original_array as $v) {
    $result[strstr($v, "_", true)] = $v;
}

var_export(array_values($result));

2 个答案:

答案 0 :(得分:0)

在接受条件

后提交活动时,在类条款和条件中使用此代码
private void showTermsandConditions() {


    SharedPreferences prefs = getSharedPreferences("prefs", MODE_PRIVATE);
    SharedPreferences.Editor editor = prefs.edit();
    editor.putBoolean("agreed", true);
    editor.apply(


    );
}

答案 1 :(得分:0)

您可以在 AndroidMainfest.xml的启动器活动中使用 AlertDialog ,并在{em>启动器活动中使用CheckboxButton来执行此操作或者根据您的选择将Activity放入Button。要在用户已经接受它的情况下获得控制权,请将值放在 SharedPreferences 文件中。所以 Preferences.class 就像:

import android.content.Context;
import android.content.SharedPreferences;

public class Preferences {

    private Context mContext;

    private SharedPreferences preferences;
    private SharedPreferences.Editor editor;

    private String FILE_NAME = "app.Preferences";
    private int MODE = Context.MODE_PRIVATE;

    private String KEY_THERMS = "KEY_THERMS";

    public Preferences(Context context) {
        mContext = context;
        preferences = mContext.getSharedPreferences(FILE_NAME, MODE);
        editor = preferences.edit();
    }

    public void setTherms(String value) {
        editor.putString(KEY_THERMS, value);
        editor.commit();
    }

    public String getTherms() {
        return preferences.getString(KEY_THERMS, "NO");
    }

}

启动器活动中将包含以下内容:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_therms);

    Preferences preferences = new Preferences(this);
    String therms = preferences.getTherms();
    if(therms.equals("YES")){
        Intent intentMain = new Intent(this, MainActivity.class);
        startActivity(intentMain);
    }else{
        //show therms to accept

        button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            preferences.setTherms("YES");
        }
        });
    }


}

这只是解决问题的示例模型。有很多方法可以做到。