2011-07-09 47 views
0

我得到的錯誤令牌「市場率」的語法錯誤,此令牌之後預期的VariableDeclaratorId ... Uri.parse(「https://market.android.com/details?id=com.synamegames 。放棄」);安卓碼率按鈕語法錯誤

令牌(S),錯位構建體

語法錯誤... startActivity(市場);

 private void makeDialog() {  

     AlertDialog.Builder about = new AlertDialog.Builder(this);  

     about.setMessage("About The Giveaway"); 

     about.setPositiveButton("Rate", new DialogInterface.OnClickListener() { 
      Intent market = new Intent(
        "android.intent.action.VIEW", 

       startActivity(market); 
      public void onClick(DialogInterface arg0, int arg1) { 
//action 
      } 
     }); 

     about.setNegativeButton("Close", new DialogInterface.OnClickListener() { 
      public void onClick(DialogInterface arg0, int arg1) {} 
     }); 

     about.show(); 
    } 

} 

回答

0

請試試這個, 我測試過的代碼和按要求工作..

AlertDialog.Builder約=新AlertDialog.Builder(本);

about.setMessage("About The Giveaway"); 

    about.setPositiveButton("Rate", new DialogInterface.OnClickListener() 
    { 
     Intent market = new Intent("android.intent.action.VIEW",Uri.parse("https://market.android.com/details?id=com.synamegames.giveaway")); 

     public void onClick(DialogInterface arg0, int arg1) 
     { 
        //action 
      startActivity(market); 

     } 
    }); 

    about.setNegativeButton("Close", new DialogInterface.OnClickListener() 
    { 
     public void onClick(DialogInterface arg0, int arg1) 
     { 

     } 
    }); 

    about.show(); 

嘗試在Main/UI線程中運行代碼。

1

我覺得你有兩個問題。這裏

首先,你有不匹配的括號:

Intent market = new Intent(
    "android.intent.action.VIEW", 
    Uri.parse("https://market.android.com/details?id=com.synamegames.giveaway"); 
startActivity(market); 

我認爲你需要的Uri.parse調用後的提取物托架,收意向構造函數調用:

Intent market = new Intent(
    "android.intent.action.VIEW", 
    Uri.parse("https://market.android.com/details?id=com.synamegames.giveaway")); 
startActivity(market); 

或提取的Uri.parse呼叫開始:

Uri uri = Uri.parse("https://market.android.com/details?id=com.synamegames.giveaway"); 
Intent market = new Intent("android.intent.action.VIEW", uri); 
startActivity(market); 

第二,您在OnClickListener()內部子類中有效地獲得了一塊代碼,而不是在初始化程序塊或方法中。你的意思是把它放在onClick處理程序中?

about.setPositiveButton("Rate", new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface arg0, int arg1) { 
     Uri uri = Uri.parse("..."); 
     Intent market = new Intent("android.intent.action.VIEW", uri); 
     startActivity(market); 
    } 
});