我正在开发和App,我需要将int数据从一个片段传递到Another Activity。问题在于它返回0或false。
首先,我启动ActivityForResult并放置捆绑包。 然后,我传递一个布尔值,它可以正常工作,但是当我尝试将int片段中的int放入包中并返回到onActivityResult时,它将调整为0或false。
有人可以帮忙吗?我也尝试过putExtras,但仍然为假
public void newcampeon(View view) {
Intent i = new Intent(getApplicationContext(), Campeones.class);
b = new Bundle();
Boolean vengodraft = true;
b.putBoolean("vengodraft",vengodraft);
i.putExtras(b);
startActivityForResult(i,01);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
int res = b.getInt("idcampeon");
aban1.setImageResource(res);
Toast.makeText(getApplicationContext(),String.valueOf(res),
Toast.LENGTH_SHORT).show();
}
------ Fragment on Another Acivity
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View v = inflater.inflate(R.layout.fragment_top_lane, container, false);
b = getArguments();
if(b!=null){
Boolean vengodraft = b.getBoolean("vengodraft");
if(vengodraft==true){
final ImageView aatrox = v.findViewById(R.id.aatrox);
aatrox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
int id = aatrox.getId();
getActivity().setResult(Activity.RESULT_OK);
b.putInt("idcampeon",id);
getActivity().finish();
}
});
}
}
return v;
它应该返回Img的当前ID
答案 0 :(得分:0)
我不使用Java,但我会尽力帮助您。您可以使用import os
from selenium import webdriver
BASE_PATH = os.path.abspath(os.path.dirname(__file__)) # get script directory
CHROME_DRIVER_PATH = os.path.join(BASE_PATH, 'chromedriver') # create chrome driver path
driver = webdriver.Chrome(executable_path = CHROME_DRIVER_PATH)
与活动进行交流。 Create custom listener
下面的代码是一个“通用”代码,可帮助您了解接口的实现。
复制帖子中的代码:
Java interfaces
现在在您想要获得结果的活动中扩展您的界面。
public interface MyListener { //Define an interface anywhere in your project.
// you can define any parameter as per your requirement
public void callback(View view, String result);
}
答案 1 :(得分:0)
最后,我明白了它的错。非常简单。 我只是在这里正确地输入了sintax。只需提出一个新的意图并传递参数即可。
@Override
public void onClick(View v) {
String nombrecampeon = String.valueOf(aatrox.getTag());
Intent i = new Intent();
i.putExtra("nombrecampeon",nombrecampeon);
getActivity().setResult(Activity.RESULT_OK,i);
getActivity().finish();
}
});
在ActivityResult上
String uri = "@drawable/"+data.getExtras().getString("nombrecampeon");
int imageResource = getResources().getIdentifier(uri, null, getPackageName());
Drawable res = getResources().getDrawable(imageResource);
aban1.setImageDrawable(res);
无论如何,谢谢大家的帮助:)