java - 按钮点击错误...找不到方法

标签 java android android-activity buttonclick

我似乎无法从我的 Button 启动新的 Activity,我已在此处搜索答案,但似乎无法解决问题。我希望有人有一个简单的解决方案。提前致谢。

这是错误:

E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.IllegalStateException: Could not find a method openSearch(View) in the 
activity class dk.mathias.splitcab.MainActivity 
for onClick handler on view class android.widget.Button with id 'btnStartSearch'

MainActivity.java

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

}

public void openSearch(){
    Intent openSearchIntent = new Intent(MainActivity.this, StartSearch.class);
    startActivity(openSearchIntent);
}

AndroidManifest.xml

    <activity
        android:name=".StartSearch"
        android:label="@string/title_activity_start_search" >
        <intent-filter>
            <action android:name="dk.mathias.splitcab.STARTSEARCH" />

            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
    </activity>

activity_main.xml

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/StartSearch"
    android:id="@+id/btnStartSearch"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_alignRight="@+id/tvWelcome"
    android:layout_alignEnd="@+id/tvWelcome"
    android:onClick="openSearch"

    />

StartSearch.java

public class StartSearch extends Activity {

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

最佳答案

问题出在你的方法签名

public void openSearch(){

它应该有一个且只有一个参数,即 View

更改为

public void openSearch(View v){

v 显然可以是您想要的任何内容,但您应该使其有意义,例如 vview 等...

From the Docs

In order for this to work, the method must be public and accept a View as its only parameter.

See this answer有关添加 ButtonsOnClick

的更详细说明

关于java - 按钮点击错误...找不到方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26631419/

相关文章:

java - Spring3, hibernate ;我如何使用 HibernateTemplate

java - @Resource注解在运行时为空

java - 如何使用 JUnit Mockito 验证检查方法是否未被调用

java 运行时类生成框架

Android MultipartEntity POST 接收除 FileBody 之外的所有内容

android - Roboto 字体中包含哪些字形或字符集?

android - 一旦我在 datepicker 中选择日期然后我再次打开 datepicker 它显示当前日期未选择日期

java - 离开和返回 Activity 后使用计时器 onTick 更新 TextView

android - getSupportActionBar().hide() 支持android 4.0及以下吗?

android - 从 BroadcastReceiver 调用时 startActivity 不工作