Android - 使整个区域超链接而不仅仅是文本?

时间:2011-01-11 12:00:40

标签: android hyperlink

真的很感激一些帮助。

我有一个应用程序,包括一个库,文本和图标。我想做的是类似于Android市场(例子可以在下面看到)。在Android市场中,整个区域是超链接而不仅仅是文本。将手指放在其中一个应用程序上,它将亮起绿色。整个区域是一个超链接。如下所示:

希望得到这样的结果:http://img269.imageshack.us/img269/691/09droid3295x440.jpg

无论如何,我可以对我的应用程序这样做吗?我有一个非常相似的应用程序,画廊位于顶部,左侧有图标,每个图标旁边都有文字。我是一个新手,所以我使用嵌套的linearlayout,每个都有textview和imageview。

有没有办法可以做到?在此先感谢您的帮助!

3 个答案:

答案 0 :(得分:1)

当我误解了这个问题时,我会在这里给出正确的答案。如果我理解正确,您希望拥有可点击的视图(在本例中为LinearLayout):

LinearLayout layout = (LinearLayout)findViewById(R.id.layoutId);

layout.setOnClickListener(new View.OnClickListener() {

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

        }
    });

或者任何视图(可以是Button,TextView等)。

答案 1 :(得分:0)

您可以执行以下操作来实现此目的:

Spannable spans = (Spannable) text;
ClickableSpan clickSpan = new ClickableSpan() {
    @Override
    public void onClick(View widget) {
        Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://"
               + url));
    }

    public void updateDrawState(TextPaint ds) {
        // override link-centric text appearance
    }
};
int index = (text.toString()).indexOf(url);
spans.setSpan(clickSpan, index, url.length() + index, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

文字是你的CharSequence。

答案 2 :(得分:0)

链接无效

要回答您的查询,请在布局上创建链接而不是文本