来自ADT的代码源中的语法错误非常奇怪

时间:2014-01-09 23:05:45

标签: android imageview tap

我的活动运作良好。有一个imageview。我想让用户点按此图片。应用程序在模拟器上运行,我也在我的kindle-hd上测试它。没问题。我找到了很多关于Android Imageview setOnTouchListener的例子。 所以,我得到其中一个,我把它放在我的代码中,在课程的底部。 我查了很多次才发现错误,但我还没找到。我是Android新手。所以我相信我无法理解错误在哪里。 如果我从// CODE START HERE和// CODE END HERE中删除代码行,则一切正常。 任何的想法? 非常感谢。塞尔吉奥

} End of previous function I get **Syntax error on token "}", delete this token**

    //CODE START HERE
ImageView imgHalfCourt =(ImageView) findViewById(R.id.imgHalfCourt);
imgHalfCourt.setOnTouchListener(new View.OnTouchListener(){
    @Override
    public boolean onTouch(View v, MotionEvent event)
    {
        ImageView imgHalfCourt =(ImageView) findViewById(R.id.imgHalfCourt);
        final Bitmap bitmap =((BitmapDrawable)imgHalfCourt.getDrawable()).getBitmap();
        int x = (int)event.getX();
        int y = (int)event.getY();
        int pixel = bitmap.getPixel(x,y);

        //then do what you want with the pixel data, e.g
        int redValue = Color.red(pixel);
        int blueValue = Color.blue(pixel);
        int greenValue = Color.green(pixel);  
        return true;
    }
});
    //CODE END HERE

}类的结束我得到语法错误,插入“}”来完成ClassBody

2 个答案:

答案 0 :(得分:0)

您的代码应该使用onCreate()之类的方法,而不是类主体。

您发布的语法错误表明{}并不完全平衡。

答案 1 :(得分:0)

奇怪的语法错误?一点也不,我猜!

只需在//CODE START HERE//CODE END HERE之间剪切您的代码,然后将其复制到Activitie的{​​{1}}。