gpt4 book ai didi

java - 是否可以在数组上使用共享 Intent

转载 作者:行者123 更新时间:2023-12-02 09:54:36 26 4
gpt4 key购买 nike

我想在我的数组上使用共享 Intent 。我创建了一个包含图像和文本的数组。但是,可以共享数组吗?

我尝试了图像共享 Intent ,但没有成功。基本上,用户单击按钮并共享图像和文本的组合。我使用了按钮的 onclick 监听器。是否可以共享阵列,或者我是否需要共享单个图像和文本?该图像带有一组特定的文本,我使用随机播放将其随机化

这是Java主要创建变量的代码

private ImageView mImageView;
private TextView mTextView;
private Button mButton;



@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);



btnShare = (Button)findViewById(R.id.btnShare);

mImageView = (ImageView)findViewById(R.id.imageView);
mTextView = (TextView)findViewById(R.id.facts);
mButton = (Button)findViewById(R.id.button);

showRandomFacts();

mButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

showRandomFacts();

}
});

这是主 Java Activity 中的数组

公共(public)无效showRandomFacts(){

    shuffleFacts();
mImageView.setImageResource(factArray[0].getmImage());
mTextView.setText(factArray[0].getmFact());


}




Facts f01 = new Facts(R.drawable.bigpen, "Owls can swivel their heads up to 200 degrees");
Facts f02 = new Facts(R.drawable.blunt, "Blunts was first derived by food");
Facts f03 = new Facts(R.drawable.cake, "fsefs");

Facts [] factArray = new Facts[] {

f01,f02,f03

};


public void shuffleFacts() {

Collections.shuffle(Arrays.asList(factArray));

}

最佳答案

最简单的方法是在 Facts 类中实现 Parcelable ( https://developer.android.com/reference/android/os/Parcelable )。

这允许您在 Intent 中共享任何类对象。当您实现该接口(interface)时,您可以创建一个新 Intent :

Intent intent = new Intent(getBaseContext(), NextActivity.class);
Facts f01 = new Facts(R.drawable. , "Random fact")
intent.putExtra("f01", f01);
startActivity(intent);

要在您使用的下一个 Activity 中检索对象:

Facts f01= getIntent().getExtras().getParcelable("f01");

关于java - 是否可以在数组上使用共享 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56091149/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com