我试图编写一个RemotePlaybackClient示例应用程序,部分原因是Google发布的aapt应用程序崩溃了.
我可以获得RemotePlaybackClient支持play(),并在Chromecast上播放视频.
但是,当我打电话时stop(),要停止播放视频,而Chromecast确实停止播放(显示一个黑色屏幕,其中有一个投射图标居中),SessionActionCallback我传入stop()调用的内容不会被调用onResult():
private void stop() {
logToTranscript(getActivity().getString(R.string.stop_requested));
SessionActionCallback stopCB=new SessionActionCallback() {
@Override
public void onResult(Bundle data, String sessionId,
MediaSessionStatus sessionStatus) {
logToTranscript(getActivity().getString(R.string.stopped));
isPlaying=false;
isPaused=false;
getActivity().supportInvalidateOptionsMenu();
endSession();
}
};
client.stop(null, stopCB);
}
Run Code Online (Sandbox Code Playgroud)
如果我尝试也会发生同样的事情pause()- 未调用SessionActionCallback传递给pause().
Google发布的示例代码显示应该调用这些回调,但是,我再也无法成功编译.
有谁知道在什么情况下SessionActionCallback不会起作用,而ItemActionCallback使用它play() 会起作用?
UPDATE
我希望你们中的一些人可以帮助我:
我有一个带有2个textviews和1个单选按钮的自定义列表视图.
我想将它作为单一选择,但每次我点击列表视图中的项目时,它都不会从其他单选按钮中删除"检查".
我的xml代码:
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<TextView
android:id="@+id/tvMaterialName"
android:layout_width="250dp"
android:layout_height="fill_parent"
android:padding="5dp"
android:text="MaterialName"
android:textSize="35px" />
<TextView
android:id="@+id/tvMaterialNo"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="5dp"
android:text="MaterialNo"
android:textSize="1px"
android:visibility="invisible" />
</LinearLayout>
<RadioButton
android:id="@+id/rdBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="false"
android:checked="false" />
</LinearLayout
Run Code Online (Sandbox Code Playgroud)
我的onItemClickListener:
searchList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View v,
int position, long id) {
LinearLayout item_view = (LinearLayout) v;
RadioButton itemcheck = (RadioButton) item_view
.findViewById(R.id.rdBtn);
itemcheck.setChecked(true);
if (itemcheck.isChecked()) {
itemcheck.setChecked(true);
} else {
itemcheck.setChecked(false);
}
}
});
Run Code Online (Sandbox Code Playgroud)
我的适配器中的getView()
@Override …Run Code Online (Sandbox Code Playgroud) 我的列表视图(2 个文本视图和 1 个单选按钮)有问题。
问题:我的想法是用户单击列表视图中的项目,单选按钮会自动选中。
我已经搜索了一段时间,但无法让单选按钮工作。
我的 XML
<RadioButton
android:id="@+id/rdBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:focusable="false" />
Run Code Online (Sandbox Code Playgroud)
我的适配器
r = (RadioButton) convertView.findViewById(R.id.rdBtn);
r.setChecked(selectedPosition == position);
r.setTag(position);
r.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//r.setChecked(true);
Toast.makeText(context, InformationActivity.result,
Toast.LENGTH_SHORT).show();
selectedPosition = (Integer) view.getTag();
notifyDataSetInvalidated();
}
});
return convertView;
Run Code Online (Sandbox Code Playgroud)
我试过
r.setChecked(true);
Run Code Online (Sandbox Code Playgroud)
在我的活动类中,第一次单击有效,但第二次单击在列表视图上选择了不同的项目。
我希望你们中的一些人可以帮助我。谢谢