直播商城原始碼如何實現資料的單項選擇

雲豹科技曉彤發表於2021-09-15

在直播商城原始碼中,有很多需要使用者選擇的共鞥,那麼單項選擇是怎麼實現的呢?

MainActivity如下:

package cc.testradiogroup;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.RadioGroup.OnCheckedChangeListener;
import android.app.Activity;
/**
 * Demo描述:
 * 利用自定義RadioGroup實現單選
 *
 * 參考資料:
 * 1 http://blog.csdn.net/xiaanming
 * 2 
 * 
 *   Thank you very much
 */
public class MainActivity extends Activity {
	private RadioGroup mRadioGroup; 
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		init();
	}
  
	private void init(){
		mRadioGroup=(RadioGroup) findViewById(R.id.radioGroup);
		mRadioGroup.setOnCheckedChangeListener(new RadioButtonOnCheckedChangeListenerImpl());
	}
	
	// 監聽單選的變化
	private class RadioButtonOnCheckedChangeListenerImpl implements OnCheckedChangeListener {
		@Override
		public void onCheckedChanged(RadioGroup group, int checkedId) {
			RadioButton rb = (RadioButton) findViewById(group.getCheckedRadioButtonId());
			String currentSelected = rb.getText().toString();
			System.out.println("現在選中是:" + currentSelected);
		}
	}
}

main.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<!-- 步驟如下: -->
<!--1: android:button="@null" 去掉自帶的圖示   -->
<!--2:android:drawableRight="@drawable/line" 在文字的右邊設定圖片-->
<!--3: android:drawablePadding="10dip" 圖片與文字間的距離-->
<!--4:android:layout_marginLeft="-17dip" 每個RadioButton距離左邊緣或者距其左RadioButton的距離-->
<LinearLayout 
    xmlns:android="
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:gravity="center_horizontal" >
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="15sp"
        android:text="測試自定義的RadioGroup來實現單選功能" >
    </TextView>
    <RadioGroup
        android:id="@+id/radioGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:background="@drawable/bg" >
        <RadioButton
            android:id="@+id/cai"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="-17dip"
            android:checked="true"
            android:button="@null"
            android:drawableRight="@drawable/line"
            android:drawablePadding="10dip"
            android:text="菜"
            android:textColor="@drawable/text_selector" >
        </RadioButton>
        <RadioButton
            android:id="@+id/tang"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
             android:layout_marginLeft="-15dip"
            android:button="@null"
            android:drawableRight="@drawable/line"
            android:drawablePadding="10dip"
            android:text="湯" 
            android:textColor="@drawable/text_selector">
        </RadioButton>
        
        <RadioButton
            android:id="@+id/zhushi"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
             android:layout_marginLeft="-15dip"
            android:button="@null"
            android:drawableRight="@drawable/line"
            android:drawablePadding="10dip"
            android:text="主   食"
            android:textColor="@drawable/text_selector" >
        </RadioButton>
        
        <RadioButton
            android:id="@+id/zhou"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
             android:layout_marginLeft="-15dip"
            android:button="@null"
            android:drawableRight="@drawable/line"
            android:drawablePadding="15dip"
            android:text="粥"
            android:textColor="@drawable/text_selector" >
        </RadioButton>
    </RadioGroup>
</LinearLayout>



text_selector.xml如下:


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android=" >
      <item android:color="#ffffff" android:state_checked="true"/>
      <item android:color="#000000"/>
</selector>

這樣我們就實現了直播商城原始碼簡單的單選功能。

宣告:本文由雲豹科技轉發自小弟的谷哥部落格,如有侵權請聯絡作者刪除


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

相關文章