Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用意图_Java_Android_Android Intent_Bundle - Fatal编程技术网

Java 如何使用意图

Java 如何使用意图,java,android,android-intent,bundle,Java,Android,Android Intent,Bundle,我不明白如何从其他布局中获得意图,因为我有MenuLayout,其中有TextSize复选框 if(male_pismo.isChecked()){ velkost_pisma=22; Intent intent_pismo = new Intent(this, MainActivity.class); intent_pismo.putExtra("font_size", velkost_pisma); startActivi

我不明白如何从其他布局中获得意图,因为我有MenuLayout,其中有TextSize复选框

if(male_pismo.isChecked()){
        velkost_pisma=22;
         Intent intent_pismo = new Intent(this, MainActivity.class);
         intent_pismo.putExtra("font_size", velkost_pisma);
         startActivity(intent_pismo);
    }
当我点击复选框时,意图不会启动。我的代码有错误吗?或者我必须使用按钮来启动意图

第二个问题是,我的主活动代码中有

Intent i=getIntent();
    Bundle extras = i.getExtras();
    velkost_pisma=extras.getInt("font_size");
当没有任何意图时,我的程序就会崩溃

当我点击复选框时,意图不会启动

您是否设置了复选框?您很可能忘记为您的复选框调用setOnCheckedChangeLister方法,因为从提供的代码片段中,所有内容看起来都是正确的

当没有任何意图时,我的程序就会崩溃

这里您需要检查意图数据是否为空:

Intent i = getIntent();
Bundle extras = i.getExtras();
if (extras != null) {
   velkost_pisma = extras.getInt("font_size");
}

添加一些日志以测试代码是否已执行。确定。我将该代码添加到我的程序中。我不使用OnCheckedChangeListener。@Patrick OnCheckedChangeListener通常被推荐用于复选框。其他侦听器无法正常工作。我在代码中添加了意图测试,但它仍然崩溃//编辑对不起我的错误,我放弃在if之后删除一行代码。Yes intent不会崩溃,但复选框no。我通过
android:onClick=“onCheckboxClicked”