2012-03-28 127 views
1

我有一個按鈕可以在Android中打開一個新的活動,但它什麼也不做。活動將不會打開

Java進行的第一項活動:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.lists); 


     } 

@Override 
public void onConfigurationChanged(Configuration newConfig) { 
    // ignore orientation/keyboard change 
    super.onConfigurationChanged(newConfig); 


     ListView listsList = (ListView) findViewById(R.id.lists); 
     Button newList = (Button) findViewById(R.id.newlistbutton); 
     newList.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent myIntent = new Intent(v.getContext(), NewWishList.class); 
       startActivity(myIntent); 
      } 
     }); 
} 
} 

Java進行第二項活動:

public class NewWishList extends Activity { 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.newlist); 

     Button back = (Button) findViewById(R.id.backbutton); 
      back.setOnClickListener(new View.OnClickListener() { 
       public void onClick(View view) { 
        Intent intent = new Intent(view.getContext(), ListOfLists.class); 
        startActivity(intent); 
       } 

      }); 
    } 
@Override 
public void onConfigurationChanged(Configuration newConfig) { 
    // ignore orientation/keyboard change 
    super.onConfigurationChanged(newConfig); 

    RadioGroup option = (RadioGroup) findViewById(R.id.radioGroup1); 

} 
} 

清單:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.wish.list" 
android:versionCode="1" 
android:versionName="1.0" > 

<uses-sdk 
    android:minSdkVersion="7" /> 

<uses-permission android:name="android.permission.INTERNET"></uses-permission> 

<uses-feature android:name="android.hardware.screen.portrait"/> 


<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:screenOrientation="portrait" 
    android:theme="@android:style/Theme.Black.NoTitleBar"> 
    <activity 
     android:name="com.wish.list.FacebookSignIn" 
     android:label="@string/app_name" 
     android:configChanges="orientation|keyboardHidden" 
     android:screenOrientation="portrait" > 
     <intent-filter> 
      <action 
       android:name="android.intent.action.MAIN" /> 

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

<activity 
    android:name=".ListOfLists" 
    android:configChanges="orientation|keyboardHidden" 
    android:screenOrientation="portrait" 
    ></activity> 

<activity 
android:name=".NewWishList" 
android:configChanges="orientation|keyboardHidden" 
    android:screenOrientation="portrait" 
></activity> 

</application> 
</manifest> 

Logcat或錯誤日誌中沒有錯誤。這很奇怪。我有onConfigurationChange的原因是因爲我已將它設置爲強制縱向定位。這些活動在清單中定義。

+0

什麼是「v」?張貼您的清單。 – 2012-03-28 00:30:13

+0

@JeffreyBlattman public void onClick(View v)它在OnClickListener中的第一個活動中的按鈕。我現在將發佈Manifest。 – Cole 2012-03-28 00:33:10

+0

在onClick方法中放置斷點或調試日誌,因爲onConfigurationChanged尚未被調用來設置onclick偵聽器,所以它可能未被調用。 – superfell 2012-03-28 01:41:16

回答

1

相反v.getcontext的()嘗試getApplicationContext()

+0

這也沒有效果。 – Cole 2012-03-28 00:35:28

2

第一,嘗試使用

MyActivity.this 

上下文。

+0

所以它會是新的意圖(ListOfLists.this,NewWishList.class)?那也行不通。 (第一個活動是ListofLists,第二個是NewWishList) – Cole 2012-03-28 00:54:18

+0

首先,您是否在活動開始時仔細觀察logcat?有時候在他們的表現中會有微妙的問題出現在日食中。第二,你確定活動沒有開始?由於某種原因,它在啓動時失敗了嗎?第三,你確定onClick()代碼是否被執行? – 2012-03-28 01:17:40

0

什麼是您使用的IDE?可能是Android Studio? 這樣做。

  1. 退出工作室。
  2. 刪除.idea \ workspace.xml文件
  3. 下重新啓動,然後再試一次

爲我工作在Android 1.0工作室就像一個魅力! 希望這有助於!