2011-08-05 52 views
1

这里是我的PlayerActivity:程序强制关闭

package player.org; 
import android.app.Activity; 
import android.os.Bundle; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import android.widget.LinearLayout; 
import android.widget.MediaController; 

import android.app.Activity; 
import android.os.Bundle; 

public class PlayerActivity extends Activity { 
    /** Called when the activity is first created. */ 
    private MediaView media=new MediaView(this); 
    @Override 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setContentView(media); 
    } 
} 

这里是我的MediaView:

package player.org; 
import android.app.Activity; 
import android.view.*; 
import android.widget.ImageView; 
import android.content.*; 
import android.content.*; 
import android.graphics.Color; 

    class MediaView extends View 
      { 
       public MediaView(Context context) 
        { 
         super(context); 
         setBackgroundColor(Color.WHITE); 
        } 





      } 

,这里是我的清单:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="player.org" 
     android:versionCode="1" 
     android:versionName="1.0"> 
    <uses-sdk android:minSdkVersion="10" /> 

    <application android:icon="@drawable/icon" android:label="@string/app_name"> 
     <activity 
     android:name=".MediaView" 
     android:label="@string/MediaView_title"> 

     </activity> 
     <activity android:name=".PlayerActivity" 
        android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 


    </application> 
</manifest> 

但是,当我启动的应用程序。 ,它强行关闭。

你有什么建议吗? 谢谢您的回答

+0

你也许可以找到一些有用的有关通过检查logcat发生这种情况的信息。如果您使用Eclipse,请转至窗口 - >显示视图 - >其他 - > Android - > Logcat。如果没有,打开DDMS。 – Slubb

+0

请发布logcat输出.. –

回答

1

你正在写这行private MediaView media=new MediaView(this);,之前的活动是initiated.So 'this'关键字是强制关闭应用程序

请使用类似这样的

public class PlayerActivity extends Activity { 
    /** Called when the activity is first created. */ 
    private MediaView media; 
    @Override 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(media); 
     media=new MediaView(this); 
    } 
} 
+0

感谢您的回答,这是真正的帮助 –

+0

欢迎您,我认为upvoting /接受也是感谢的方式 – Rasel