Beispiel #1
0
        public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position)
        {
            ConfigTableHolder tableHolder = holder as ConfigTableHolder;

            tableHolder.mViewConfigTable.Click += (s, e) => MViewConfigTable_Click(s, e, tableHolder);

            ConfigColumnAdapter adapter = new ConfigColumnAdapter(mListTableName[position].ListColumnNames, tableHolder.mConfigColumn);

            mListTableName[position].ListColumnNames.Adapter = adapter;
            tableHolder.mConfigColumn.SetAdapter(adapter);

            if (mListTableName[position].SubRec == null)
            {
                float scale = tableHolder.mConfigColumn.Context.Resources.DisplayMetrics.Density;
                tableHolder.mConfigColumn.SetMinimumHeight((int)(45 * scale + 0.5f) * mListTableName[position].ListColumnNames.Count);
                mListTableName[position].SubRec = tableHolder.mConfigColumn;
            }

            tableHolder.mTitle.Text      = mListTableName[position].TableName;
            tableHolder.mChecked.Checked = mListTableName[position].TableChecked;
            tableHolder.mChecked.Click  += delegate
            {
                for (int i = 0; i < mListTableName[position].ListColumnNames.Count; i++)
                {
                    mListTableName[position].ListColumnNames[i].ColumnSelected = tableHolder.mChecked.Checked;
                }
                adapter = new ConfigColumnAdapter(mListTableName[position].ListColumnNames, tableHolder.mConfigColumn);
                mListTableName[position].ListColumnNames.Adapter = adapter;
                tableHolder.mConfigColumn.SetAdapter(adapter);
                mListTableName[position].TableChecked = tableHolder.mChecked.Checked;
            };
        }
Beispiel #2
0
        public override RecyclerView.ViewHolder OnCreateViewHolder(ViewGroup parent, int viewType)
        {
            mContext = parent.Context;

            View     view     = LayoutInflater.From(mContext).Inflate(Resource.Layout.ConfigTableRow, parent, false);
            TextView textView = view.FindViewById <TextView>(Resource.Id.textViewConfigTable);
            CheckBox checkBox = view.FindViewById <CheckBox>(Resource.Id.checkBoxConfigTable);

            RecyclerView        recycleView        = view.FindViewById <RecyclerView>(Resource.Id.recyclerViewConfigTableRow);
            LinearLayoutManager linerLayoutManager = new LinearLayoutManager(mContext, LinearLayoutManager.Vertical, false);

            recycleView.SetLayoutManager(linerLayoutManager);

            ConfigTableHolder tableHolder = new ConfigTableHolder(view)
            {
                mTitle        = textView,
                mChecked      = checkBox,
                mConfigColumn = recycleView
            };

            return(tableHolder);
        }
Beispiel #3
0
 private void MViewConfigTable_Click(object sender, EventArgs e, ConfigTableHolder mTableHolder)
 {
     mTableHolder.mConfigColumn.Visibility = (mTableHolder.mConfigColumn.Visibility == ViewStates.Gone) ? ViewStates.Visible : ViewStates.Gone;
 }