程序中的例外

时间:2011-05-23 09:40:56

标签: android

我尝试执行以下代码。如果我输入http [例如:http://www.google.com]的网站名称,我会得到正确的输出。否则我会强行关闭。即使我正在捕捉activitynotfoundexception,我也得到了ActivityNotFoundException

帮助我。

try {
    Button browse=(Button)findViewById(R.id.Browse);
    browseURl=(EditText)findViewById(R.id.BrowseUrl);
    browse.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub

            Intent invokeURI=new Intent(Intent.ACTION_VIEW,Uri.parse(browseURl.getText().toString()));
            startActivity(invokeURI);
        }
    });
} catch (ActivityNotFoundException ex) {
    // TODO: handle exception

    Log.e("BrowseURI","Failed Browsing the given URI",ex);
}

1 个答案:

答案 0 :(得分:2)

您需要在onClick事件中捕获异常,因为您在单击后获得了异常,而不是在您挂钩事件处理程序时。

    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub

        Intent invokeURI=new Intent(Intent.ACTION_VIEW,Uri.parse(browseURl.getText().toString()));
        try {
            startActivity(invokeURI);
        }
        catch (ActivityNotFoundException ex) {
            Log.e("BrowseURI","Failed Browsing the given URI",ex);
        }
    }