ボタンのあるレイアウトがあります。ボタンをクリックすると、「アクション バーの共有ボタン」(ShareActionProvider を使用して実装できる) と同じ機能を取得できるはずです。web で例を探してみました。しかし、見つけることができませんでした。これは可能ですか?
3935 次
1 に答える
8
はい、ボタンのクリックに応答して暗黙的なインテントを起動することで、同じ機能を実現できます。以下の例のように:
Main.java
public class MAIN extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void SHARE(View view) {
// Do something in response to button
EditText content = (EditText) findViewById(R.id.editText1);
String shareBody = content.getText().toString();
Intent sharingIntent = new Intent(android.content.Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "\n\n");
sharingIntent.putExtra(android.content.Intent.EXTRA_TEXT, shareBody);
startActivity(Intent.createChooser(sharingIntent, getResources().getString(R.string.a5)));
}
}
layout_main.java
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="${relativePackage}.${activityClass}" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="31dp"
android:text="@string/MS1"
android:gravity="center"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/textView1"
android:layout_centerHorizontal="true"
android:layout_marginTop="36dp"
android:ems="10" >
<requestFocus />
</EditText>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editText1"
android:layout_centerHorizontal="true"
android:layout_marginTop="50dp"
android:onClick="SHARE"
android:text="SEND" />
</RelativeLayout>
お役に立てれば。
于 2014-11-25T06:29:17.380 に答える