如何使用XML创建显示自定义文本的网站链接

时间:2012-08-15 04:03:44

标签: android android-xml

晚上好,

我有一个很简单的问题,但对于我的生活,我无法理解。

我有一个指向我想要放入我的应用程序的网页的链接。我想用XML做这件事,以便让事情变得更容易,因为这将是一个非常大的应用程序。我想要这样的自定义文本,单击时打开Web浏览器。我想就像你可以用HTML一样。现在我有

android:text="http://bhflc.org/"
android:autoLink="web"

我理解文本部分是我的自定义文本所在的位置,但我会在哪里放置网址?

提前谢谢。

2 个答案:

答案 0 :(得分:0)

<强> IDEA:

您需要一个自定义Web视图类。在此Web视图中,您可以获取从xml文件设置的属性值。

<强> CODE:

您的网络视图课程

    YourWebView extends WebView{
    public YourWebView (Context context, AttributeSet attrs) {
       //get attribute values which you set from xml file.
       TypedArray a=mContext.obtainStyledAttributes(attrSet, R.styleable.YourView);
       final String url=a.getString( R.styleable.YourView_web_url);
       yourWebView.mWebView.loadUrl(url);

}

你的XML:

<?xml version="1.0" encoding="utf-8"?>
<yourpackagenamspace.yourView
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" 
    app:web_url="http://bhflc.org/" 
     />

您必须使用values / attrs.xml文件声明属性

<declare-styleable name="YourView">

        <attr name="web_url" format="string" />

    </declare-styleable>

答案 1 :(得分:0)

您可以在XML上创建TextView并将其设置为可点击:

<TextView
     android:id="@+id/textViewID"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="Link"
     android:clickable="true" />

在你的课堂上,你可以这样做:

TextView LinkButton = (TextView) findViewById(R.id.TextViewID);
LinkButton.setOnClickListener(new View.OnClickListener() {          
        public void onClick(View v) {
            // TODO Auto-generated method stub
                            Uri uri = Uri.parse("http://www.link.com");
                            Intent openBrowser = new Intent(Intent.ACTION_VIEW, uri);
                            startActivity(openBrowser);
        }
    });

我不知道只能通过XML来实现它。