我正在使用ActionBarCompat.当我加载子片段时,我希望主页按钮作为向上按钮.所以我从子片段调用了这个:
((ActionBarActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Run Code Online (Sandbox Code Playgroud)
但仍然没有将主页按钮显示为向上按钮.我还增加了逻辑的ID android.R.id.home
中onOptionsItemSelected
,但它仍然无法正常工作.我有什么想法可以完成它吗?
我有几个api调用(顺序,异步),其中一些返回列表.我的api界面如下.
@GET("/users/settings")
Observable<UserWrapper> getUserSettings();
@GET("/{username}/collections")
Observable<List<Item>> getItems(@Path("username") String userName);
@GET("/item/{id}")
Observable<ItemInfo> getItemInfo(@Path("id") int id);
@GET("/{username}/friends")
Observable<List<Friend>> getFriends(@Path("username") String userName);
Run Code Online (Sandbox Code Playgroud)
这是我想要按顺序执行的操作:
UserWrapper
通过电话获得getUserSettings()
saveUser(userWrapper)
getItems(userWrapper.getUserName())
getItemInfo(item.getId())
itemInfo
通过电话保存每个saveItem(itemInfo)
getFriends(userWrapper.getUserName())
saveFriend(friend)
现在我是RxJava的新手,不知道如何处理列表.我看了杰克沃顿的一张幻灯片,发现他使用了一个功能,flattenList()
但我不知道它的定义.如果你能帮助创作这个链条,那将是很棒的.
更新1
这是我现在得到的:
mApiService.getUserSettings()
.map(this::saveUser)
.flatMap(userWrapper -> mApiService.getItems(userWrapper.getUserName()));
.flatMapIterable( ? "How to iterate for each item" ? );
Run Code Online (Sandbox Code Playgroud)
更新2
我想写这样的东西
mApiService.getUserSettings()
.map(this::saveUser)
.flatMap(userWrapper -> mApiService.getItems(userWrapper.getUserName()))
.someMethodToIterateThroughEachItem(item -> mApiService.getItemInfo(item))
.map(this::saveItem)
.someMethodThatCanCallUserWrapperAgain(userWrapper -> mApiService.getFriends(userWrapper.getUserName()))
.someMethodToIterateThoughEachFriend(friend -> saveFriend(friend))
Run Code Online (Sandbox Code Playgroud) 我正在尝试在 keras 中实现一个具有多个输入的模型:
为了提供该模型,我想编写一个生成器以与tf.data.Dataset.from_generator
. 从from_generator的文档中,我不清楚我应该如何提供它的参数output_types
,output_shapes
。谁能帮我这个?