当尝试在空间中使用 RxJava 时,我收到一个错误,指出生成的代码是错误的。返回 Single 时,它工作正常。但是当使用 flowable 或 observable 时,它会向生成的方法添加一个额外的布尔参数,从而导致错误。
询问
@Query("SELECT * FROM cards")
fun cardsStream(): Observable<List<Card>>
Run Code Online (Sandbox Code Playgroud)
错误
error: no suitable method found for createObservable(RoomDatabase,boolean,String[],<anonymous Callable<List<Card>>>)
Run Code Online (Sandbox Code Playgroud)
生成的方法。如果我删除false然后它编译。但显然我不能这样做,因为这是生成的代码。
return RxRoom.createObservable(__db, false, new String[]{"cards"}, new Callable<List<Card>>() {
Run Code Online (Sandbox Code Playgroud) 我有一个自定义对话框片段,里面有一个自定义ArrayAdapter.每个列表项都有3个按钮.点击每个按钮,我有OnClickListener()一个功能.功能完成后,我需要关闭对话框.因为这是在ArrayAdapter中完成的,所以我无法dismiss()在对话框片段中调用.我尝试OnClickListener()在对话框片段中设置一个按钮,但是我得到一个空指针.
我无法弄清楚如何从自定义arrayAdapter中获取对话框片段的引用.onclick事件必须在ArrayAdapter内部发生,因为它使用特定于该列表项的信息.任何帮助将不胜感激.谢谢.
DialogFragment:
public class SavedArmyDialog extends DialogFragment {
View mView;
public static SavedArmyDialog newInstance() {
SavedArmyDialog fragment = new SavedArmyDialog();
return fragment;
}
public SavedArmyDialog() {
// Required empty public constructor
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
mView = inflater.inflate(R.layout.custom_army_list, container, false);
CustomArmyObjData customArmyObjData = new CustomArmyObjData();
ArrayList<CustomArmy> customArmyArray = customArmyObjData.getCustomArmyArray(getActivity());
CustomArmyAdapter adapter …Run Code Online (Sandbox Code Playgroud)