我正在尝试与其他应用分享翻转视图内容,例如twitter,gmail等。但是分享按钮有效但不显示闪卡内容,而是显示“android.widget.ViewFlipper@40523fc0”的文本。任何帮助,请我一直在努力。下面是我的Java代码。 xml代码仅包含几个按钮和文本视图。
public class Jokes扩展了Activity实现OnClickListener,OnTouchListener {
ViewFlipper flippy;
Random r = new Random();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.jokes);
flippy = (ViewFlipper) findViewById(R.id.viewFlipper1);
flippy.setOnClickListener(this);
Button b = (Button) findViewById(R.id.bShare);
b.setOnTouchListener(this);
String s [ ]= {"abc", "DEF", "ghi"};
}
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
int i = r.nextInt();
flippy.setDisplayedChild(r.nextInt(4));
flippy.showNext();
}
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, ""+ flippy);
startActivity(Intent.createChooser(intent, "Udir/Share"));
return true;
}
}
答案 0 :(得分:0)
我建议您将要共享的数据存储为按钮标记。
b.setTag("abc"); // Whatever you want to share
这样您就可以从事件回调中的按钮获取数据。
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (v.getId()) {
case R.id.bShare: {
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_TEXT, (String) v.getTag());
startActivity(Intent.createChooser(intent, "Udir/Share"));
break;
}
}
}