線上直播原始碼,修改預設的箭頭的兩種方式

zhibo系統開發發表於2023-11-13

線上直播原始碼,修改預設的箭頭的兩種方式

方式一:在配置檔案中有個android:groupIndicator屬性,將其設定為:你的selector,例如:android:groupIndicator="@drawable/arrow_expandable_list"

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="
    <item android:drawable="@drawable/arrow_down_list_s" android:state_expanded="true"/>
    <item android:drawable="@drawable/arrow_right_list_s"/>
</selector>


xml中設定groupIndicator屬性設定箭頭點選效果:

 <ExpandableListView
        android:id="@+id/exlist_video"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:groupIndicator="@drawable/arrow_expandable_list"
        />


方式二:


xml屬性中設定為null:

 <ExpandableListView
        android:id="@+id/exlist_video"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:groupIndicator="@null"
        />


介面卡中設定:

//取得用於顯示給定分組的檢視. 這個方法僅返回分組的檢視物件
    @Override
    public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
 
        ViewHolderGroup groupHolder;
        if(convertView == null){
            convertView = LayoutInflater.from(mContext).inflate(
                    R.layout.item_exlist_group, parent, false);
            groupHolder = new ViewHolderGroup();
            groupHolder.tv_group_name = (TextView) convertView.findViewById(R.id.tv_group_name);
            convertView.setTag(groupHolder);
        }else{
            groupHolder = (ViewHolderGroup) convertView.getTag();
        }
/******************新增兩星號行部分內容,動態設定箭頭點選效果**********************/
        if (iData.get(groupPosition).size() > 1){
            if (isExpanded){
                groupHolder.tv_group_name.setCompoundDrawablesWithIntrinsicBounds(parent.getContext().getResources().getDrawable(R.drawable.arrow_down_list),null,null,null);
            } else {
                groupHolder.tv_group_name.setCompoundDrawablesWithIntrinsicBounds(parent.getContext().getResources().getDrawable(R.drawable.arrow_right_list),null,null,null);
            }
        } else {
            groupHolder.tv_group_name.setCompoundDrawablesWithIntrinsicBounds(null,null,null,null);
        }
/**********************************************************************/
 
        groupHolder.tv_group_name.setText(gData.get(groupPosition).getgName());
        return convertView;
    }


 以上就是 線上直播原始碼,修改預設的箭頭的兩種方式,更多內容歡迎關注之後的文章


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2994990/,如需轉載,請註明出處,否則將追究法律責任。

相關文章