2014-01-21 3 views
0

Я пытался разработать собственное приложение, но теперь, когда я хочу посмотреть, как он выглядит на моем телефоне, он говорит: «Appname остановился». Я устанавливаю приложение через Dropbox.Сбой приложения для Android на телефоне.

Вот копия MainActivity.java

package com.example.aikk; 

    import android.app.Activity; 
    import android.content.Intent; 
    import android.os.Bundle; 
    import android.util.Log; 
    import android.view.Menu; 
    import android.view.View; 
    import android.view.View.OnClickListener; 
    import android.widget.Button; 

    public class MainActivity extends Activity { 

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

    Button mBtn1 = (Button) findViewById(R.id.northpowerramsor); 
    mBtn1.setOnClickListener((OnClickListener) this); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.main, menu); 
    return true; 
} 
/** Called when the user clicks the Send button */ 
public void onClick(View view) { 
    Log.i("clicks","You Clicked B1"); 
    Intent i=new Intent(MainActivity.this, Ramsor.class); 
    startActivity(i); 
    // Do something in response to button 
} 

    } 

А вот копия Ramsor.java

public class Ramsor extends Activity { 

@SuppressLint("NewApi") 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    //setContentView(R.layout.activity_Ramsor); 
      //Vettefan var det här är till med när jag skulle göra quick fix på  den kom jag till nån knas layout sida 

    // Make sure we're running on Honeycomb or higher to use ActionBar APIs 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { 
     // Show the Up button in the action bar. 
     getActionBar().setDisplayHomeAsUpEnabled(true); 
    } 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    switch (item.getItemId()) { 
    case android.R.id.home: 
     NavUtils.navigateUpFromSameTask(this); 
     return true; 
    } 
    return super.onOptionsItemSelected(item); 
    } 
} 

И Android.Manifest.xml

<?xml version="1.0" encoding="utf-8"?> 
    <manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.aikk" 
    android:versionCode="1" 
    android:versionName="1.0" > 
    <uses-sdk 
     android:minSdkVersion="1" 
     android:targetSdkVersion="19" 
     android:maxSdkVersion="19" /> 
    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.example.aikk.MainActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name="com.example.aikk.Ramsor" 
     android:label="@string/title_activity_ramsor" 
     android:parentActivityName="com.example.AIKK.MainActivity" > 
    <meta-data 
      android:name="android.support.PARENT_ACTIVITY" 
      android:value="com.example.AIKK.MainActivity" /> > 
    </activity> 

    </application> 
    </manifest> 

Любые мысли был бы ВЕЛИКОЕ оценен!

+7

'Краш => Stacktrace'. Покажи нам это. –

+2

Опубликовать stacktrace – Raghunandan

ответ

1

Проблема здесь, вы пытаетесь бросить свою деятельность (это), чтобы OnClickListener

mBtn1.setOnClickListener((OnClickListener) this); 

Решение сделать свой активность реализует OnClickListener и создает нереализованный метод

1
public class MainActivity extends Activity { 

должен быть

public class MainActivity extends Activity implements OnClickListener { 

Там могут быть и другие причины аварии, а в этом случае лучше проводке StackTrace.

Вы можете сделать, как показано ниже, используя annonymous внутренний класс

mBtn1.setOnClickListener(new OnClickListener() 
{ 
     public void onClick(View v) 
     { 
      // do something 
     } 
}); 
0

Изменить определение класса для реализации OnClickListener:

public class MainActivity extends Activity implements OnClickListener { 

... и установить клик слушателя mBtn1 следующим образом:

mBtn1.setOnClickListener(this); 
0

попытка ниже этого вместо mBtn1.setOnClickListener((OnClickListener) this);

mBtn1.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View view) { 

     // Activity to do onclick . 

    } 
}); 
return true; 
Смежные вопросы