Android 找不到Onclick方法。正在尝试启动移动网络设置
我正试图通过点击按钮启动android 4.1中的移动网络设置屏幕。在单击按钮时,我得到“在activity类中找不到onOKclicked(View)方法”。我的代码如下。任何帮助都将不胜感激Android 找不到Onclick方法。正在尝试启动移动网络设置,android,android-intent,Android,Android Intent,我正试图通过点击按钮启动android 4.1中的移动网络设置屏幕。在单击按钮时,我得到“在activity类中找不到onOKclicked(View)方法”。我的代码如下。任何帮助都将不胜感激 public void onOKclicked (Intent intent){ startActivityForResult(new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS), 0); star
public void onOKclicked (Intent intent){
startActivityForResult(new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS), 0);
startActivity(intent);
}
<activity android:name="android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS"></activity>
<Button
android:id="@+id/btnOK"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="@string/OkButton"
android:onClick="onOKclicked" />
public void onokclick(意图){
startActivityForResult(新意图(android.provider.Settings.ACTION\u NETWORK\u OPERATOR\u Settings),0);
星触觉(意向);
}
试着改变你的方法,改为说public void onOKclicked(视图)
。它正在寻找一种传递视图
的方法,而不是意图
尝试将您的方法改为说public void onok clicked(view view view)
。它正在寻找一种方法,其中传递的是视图
,而不是意图
它正在寻找一个名为onOKclicked的函数,其中视图
作为参数(按钮)
它正在查找名为onOKclicked
的函数,其中视图
作为参数(按钮)
然后在startActivity(intent)上,我得到的intent无法解析为变量,如果我将intent更改为view,我仍然得到错误,我只是删除了第二个活动。谢谢然后在startActivity(intent)上,我得到的intent无法解析为变量,如果我将intent更改为view,我仍然得到错误,我只是删除了第二个活动。谢谢正如答案所解释的,如果在布局文件中使用android:onClick
属性,那么方法表单必须是public void methodName(View v)
,另外,为什么要调用startActivityForResult(…)
和startActivity(…)
?任何时候只有一个活动是可见的/活动的。我是java/android新手。看来我需要脱掉星际触觉。谢谢现在我没有进入正确的网络设置页面。它将访问可用网络,而不是移动网络设置。有什么建议吗?编辑:nm需要更改为.ACTION\u DATA\u ROAMING\u settings正如答案所解释的,如果在布局文件中使用android:onClick
属性,方法表单必须是public void methodName(View v)
而且,为什么要调用startActivityForResult(…)
和startActivity(…)
?任何时候只有一个活动是可见的/活动的。我是java/android新手。看来我需要脱掉星际触觉。谢谢现在我没有进入正确的网络设置页面。它将访问可用网络,而不是移动网络设置。有什么建议吗?编辑:nm需要更改为。操作\数据\漫游\设置
public void onOKclicked (View v){
startActivityForResult(new Intent(android.provider.Settings.ACTION_NETWORK_OPERATOR_SETTINGS), 0);
}