【问题标题】:Expandable recylerview with first item of the list open on start of the activity?活动开始时打开列表的第一项的可扩展recyclerview?
【发布时间】:2017-09-28 08:01:59
【问题描述】:

我正在开发 Xamarin Android。我已经实现了一个可扩展的回收器视图,该视图在单击视图时打开(此处为 linearLayoutRatingCard)。该卡是单击 linearLayoutRatingCard 时打开的视图。但我希望在活动开始时打开回收站视图的第一项。我已经通过使用回收器适配器的位置进行了尝试,但它没有按预期工作。这是我的 OnBindViewHolder 的代码。

int mExpandedPosition = -1;
ViewGroup root;

public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position)
        {
        MyRatingViewHolder myholder = (MyRatingViewHolder)holder;
        Rating = RatingList[position];
        pos = position;
        myholder.textViewRatingTitle.Text = Rating.RatingTitle;

        bool isExpanded = position == mExpandedPosition;
        myholder.card.Visibility = isExpanded ? ViewStates.Visible : ViewStates.Gone;
        myholder.linearLayoutRatingCard.Activated = isExpanded;
        //if (position == 0)
        //{
            //myholder.card.Visibility = ViewStates.Visible;
            //myholder.linearLayoutRatingCard.Activated = true;
            //mExpandedPosition = 0;
            //TransitionManager.BeginDelayedTransition(root);
       // }

        myholder.linearLayoutRatingCard.Click += (sender, e) =>
            {
                mExpandedPosition = isExpanded ? -1 : position;
                TransitionManager.BeginDelayedTransition(root);
                NotifyDataSetChanged();
            };

        myholder.card.Click += (sender, e) =>
        {
            myholder.card.Visibility = ViewStates.Gone;
        };
}

【问题讨论】:

  • 尝试使用int mExpandedPosition = 0
  • @MadScientist 谢谢,成功了

标签: android android-recyclerview expandablelistview expandablerecyclerview


【解决方案1】:

试试int mExpandedPosition =0

这样check中的起始位置为0。

【讨论】:

    猜你喜欢
    • 2017-11-08
    • 1970-01-01
    • 2015-12-16
    • 2016-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多