0

我有一个相当基本的页面,其中包含几个我想在浏览器中启动的外部网站按钮。我不确定应该如何存储页面的 URL。

我对Android很陌生,所以如果我采取了错误的方法,请指导我。

我有几个这样的按钮:

<Button
    style="?android:attr/buttonBarButtonStyle"
    android:onClick="openUrlFromButton"
    android:layout_height="wrap_content" 
    android:layout_width="wrap_content"             
    android:layout_weight=".3" 
    android:gravity="center_horizontal"
    android:id="@+id/btn_contact_page"
    android:text="@string/contact_page" />

我的回调是这样的:

public void openUrlFromButton(View view){       
    Uri uriUrl;

    switch(view.getId()){
        case R.id.btn_contact_facebook:
            uriUrl = Uri.parse("http://google.com/"); 
        default:
            uriUrl = Uri.parse("http://stackoverflow.com/"); 
    }
    Intent launchBrowser = new Intent(Intent.ACTION_VIEW, uriUrl);
    startActivity(launchBrowser);       
}

我不确定的是如何最好地存储 URL。

我希望能够以与用于访问按钮的 ID 相同的格式(即,从视图中)直接引用它,或者至少在回调中没有硬编码的一致方式(将其存储在 XML直接定义按钮)。

谁能指出我实现这一目标的正确方法?

非常感谢

4

1 回答 1

2

您可以使用标签:

Tags

Unlike IDs, tags are not used to identify views. Tags are essentially an extra piece of information that can be associated with a view. They are most often used as a convenience to store data related to views in the views themselves rather than by putting them in a separate structure.

采用

android:tag="http://www.google.com"

在您的按钮中,并通过您的方法获取它

(String)view.getTag()
于 2013-08-09T15:19:52.930 回答