懒洋洋大人 2015-06-05 08:40 采纳率: 75%
浏览 2674
已采纳

android viewpager根据数组的长度动态加载布局,隐藏控件无效。

布局文件

android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<android.support.v4.view.ViewPager
    android:id="@+id/viewpager"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_marginBottom="@dimen/margin_medium"
    android:layout_weight="10" >
</android.support.v4.view.ViewPager>

<LinearLayout
    android:id="@+id/viewGroup"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:gravity="center"
    android:orientation="horizontal" >
</LinearLayout>

private void initViewPager() {
View view = null;
for (i = 0; i < videoNum//数量是根据从服务器取下的数据,长度是可变的
; i++) {
view = getActivity().getLayoutInflater().inflate(
R.layout.fragment_one_video, null);
viewList.add(view);
mRtspVideoView = (RtspVideoView) view.findViewById(R.id.rv_view);
mRtspVideoView.setPlaySize(Constants.SCREEN_WIDTH,
Constants.SCREEN_HEIGHT);
mIvLogo = (ImageView) view.findViewById(R.id.iv_logo);

在OnPageChangeListener里,操作了一个播放视频。我有一个线程在播放成功的时候,把未播放视频时候的mIvLogo隐藏。
private Handler videoHandler = new Handler() {

    @Override
    public void handleMessage(Message msg) {
        System.out.println("real video");
        mIvLogo.clearAnimation();//隐藏无效。如果是显示也是无效
        mIvLogo.setVisibility(View.GONE);
    }
};
不知道是什么原因,一直是无效的。我在滑动页面的其他操作是有效的。比如按页面的position获取数据是有效的。
  • 写回答

5条回答 默认 最新

  • danielinbiti 2015-06-05 08:44
    关注
    mIvLogo = (ImageView) view.findViewById(R.id.iv_logo);这是在循环里,最后记录的是最后一次for循环的组件。
     private Handler videoHandler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            System.out.println("real video");
            mIvLogo.clearAnimation();//隐藏无效。如果是显示也是无效
            mIvLogo.setVisibility(View.GONE);//你点击的时候这个mIvLogo是最后一次view中的iv_logo
        }
    };
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥100 需要跳转番茄畅听app的adb命令
  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥50 opencv4nodejs 如何安装
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument
  • ¥15 nginx反向代理获取ip,java获取真实ip
  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证