AndroidToggleSwitch的使用

来源:互联网 发布:大华onvif端口号 编辑:程序博客网 时间:2024/06/11 14:47

最近在项目中使用了一个Switch控件,项目地址

https://github.com/BelkaLab/Android-Toggle-Switch

下面是官网的例子


看着很不错。在我的练习APP中使用效果如下


使用方法及注意事项

官网上的推荐使用Gradle添加依赖compile 'us.belka:androidtoggleswitch:1.2.0' ,实际测试不可用。只能下载源码,将源码以添加模块的方式添加到自己的项目中。

源码里有一些文件没有用,最好手动清除。比如应用图标等

在layout中添加

        <belka.us.androidtoggleswitch.widgets.ToggleSwitch            android:id="@+id/resultRange"            android:layout_width="match_parent"            android:layout_height="wrap_content"            android:layout_gravity="center" />

在java代码里添加项目

package com.jianchi.fsp.generationchildrenarithmetic;import android.content.Intent;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.support.v7.widget.Toolbar;import android.view.View;import android.widget.Button;import java.util.ArrayList;import belka.us.androidtoggleswitch.widgets.ToggleSwitch;public class MainActivity extends AppCompatActivity {    private ToggleSwitch numberNum;    private ToggleSwitch createCount;    private ToggleSwitch calculationMethod;    private ToggleSwitch resultRange;    int[] nn = {2,3,4};    int[] cc = {10,20,50,100};    String[] cm = {"混合", "加法", "减法"};    int[] rr = {10,20,50,100};    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);        setSupportActionBar(toolbar);        numberNum = initToggleSwitch(R.id.numberNum, nn);        createCount = initToggleSwitch(R.id.createCount, cc);        calculationMethod = initToggleSwitch(R.id.calculationMethod, cm);        resultRange = initToggleSwitch(R.id.resultRange, rr);        numberNum.setCheckedTogglePosition(0);        createCount.setCheckedTogglePosition(3);        calculationMethod.setCheckedTogglePosition(0);        resultRange.setCheckedTogglePosition(3);        Button bt = (Button) findViewById(R.id.bt_create);        bt.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                GenHelper gen = new GenHelper();                gen.numberNum = nn[numberNum.getCheckedTogglePosition()];                gen.createCount = cc[createCount.getCheckedTogglePosition()];                gen.calculationMethod = cm[calculationMethod.getCheckedTogglePosition()];                gen.resultRange = rr[resultRange.getCheckedTogglePosition()];                Intent intent = new Intent(getApplicationContext(), ShowActivity.class);                Bundle bundle = new Bundle();                bundle.putSerializable("gen", gen);                intent.putExtras(bundle);                startActivity(intent);            }        });    }    ToggleSwitch initToggleSwitch(int id, int ... msgs){        ToggleSwitch toggleSwitch = (ToggleSwitch) findViewById(id);        ArrayList<String> labels = new ArrayList<>();        for(int s: msgs)            labels.add(String.valueOf(s));        toggleSwitch.setLabels(labels);        return toggleSwitch;    }    ToggleSwitch initToggleSwitch(int id, String ... msgs){        ToggleSwitch toggleSwitch = (ToggleSwitch) findViewById(id);        ArrayList<String> labels = new ArrayList<>();        for(String s: msgs)            labels.add(s);        toggleSwitch.setLabels(labels);        return toggleSwitch;    }}

我的练习项目源码地址

https://code.csdn.net/do168/generationchildrenarithmetic



0 0
原创粉丝点击