2011-07-09 48 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); 
    } 
});