我正在制作一个 android 应用程序,它由一个包含多个片段的主要活动通过视图寻呼机形成。在每个片段中,我在不同的按钮上触发一个 onClick 事件并打开一个显示结果的新活动。我做过一次,startActivityForResult(intent, ID)我可以放和得到额外的东西,但是当我startActivity(intent)从另一个片段做一个简单的事情时,我得到了这个错误:
com.example.myapplication W/ActivityThread: handleWindowVisibility: no activity for token android.os.BinderProxy@a1f0097
我真的不知道是什么问题,我一直在浏览有关此问题的其他问题,即使它们以完全不同的方式解决,但没有一个对我有用。我在这里留下一些相关代码:
片段 B:
public class FragmentB extends Fragment {
....
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_b, container, false);
....
buttonListener.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (field==null || field.isEmpty()) {
Toast.makeText(fContext, "Error", Toast.LENGTH_SHORT).show();
} else {
Intent intent = new Intent(fragmentContext, NewActivity.class);
intent.putExtra(NewActivity.EXTRA_1, extra1);
intent.putExtra(NewActivity.EXTRA_2, extra2);
startActivity(intent);
}
}
});
return view;
}
}
新活动.java
public class NewActivity extends AppCompatActivity {
public static final String EXTRA_1= "com.example.myapplication.EXTRA_1";
public static final String EXTRA_2= "com.example.myapplication.EXTRA_2";
.....
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.new_activity);
String data= getIntent().getIntExtra(EXTRA_1);
if (!data.isEmpty() && cant!=null){
//do something
}
setTitle("Title 1");
...
}
....
}
我还在日志中看到与此类似的行:
com.example.myapplication W/e.myapplicatio: Accessing hidden method Landroid/graphics/FontFamily;-><init>()V (light greylist, reflection)
更新:到目前为止,新活动似乎工作正常,但我以前从未在日志中记录过这两行,这些错误是需要修复的还是由于什么?