似乎之前曾问过这个问题,但我找不到我要找的答案。我在.xml file
中有两个TextView,第一个TextView用于Title,第二个用于Url。这两个TextView从实时firebase数据库中获取数据,因此Title和Url每次都会变化。在TextViews下面,我有一个共享按钮。单击此按钮时,我希望它从两个textView中获取数据,并通过Gmail,Facebook和其他社交网站共享。
我的.xml file
看起来像是:
<TextView
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/title"
android:layout_marginTop="15dp"
android:text="Title"
android:textSize="30sp"
android:textStyle="bold"/>
<TextView
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/url"
android:layout_marginTop="15dp"
android:text="url"/>
<TextView
android:gravity="center"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/btn_share"
android:layout_marginTop="15dp"
android:text="Share"/>
因此,每次Url和Title更改并且“共享”按钮应该能够获取TextView中当前存在的数据并通过不同平台共享
答案 0 :(得分:1)
为共享文字创建Intent
,为startActivity
Intent
buttonSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String title = (String) textViewTitle.getText();
String uriStr = (String) textViewUri.getText();
String shareString = title + ", " + uriStr;
Intent sendIntent = new Intent();
sendIntent.setAction(Intent.ACTION_SEND);
sendIntent.putExtra(Intent.EXTRA_TEXT, shareString);
sendIntent.setType("text/plain");
startActivity(sendIntent);
}
});
查看此link了解更多信息。
答案 1 :(得分:0)
所以你应该在按钮的OnClick中进行这项操作,即
public void onClick(View view)
{
String Title = textViewTitle.getText().toString().trim();
String Url = textViewUrl.getText().toString().trim();
\\ Share Button Logic Goes Here
}
并记得添加 -
btnShare.setOnClickListener(this);
和类应该实现View.OnClickListener。
这将完成你的工作。
答案 2 :(得分:0)
我会将第三个TextView
更改为实际按钮。但是,如果您不想这样做,可以在第三个TextView上setOnClickListener
,在第一个和第二个文本视图上onClick()
调用getText.toString()
。并连接它们。最后推出股票意图分享给不同的社交媒体。
Here是解决这个问题的方法。使用第一个解决方案。