From 379b2144c30602de0dc895dbaf24f13d2f287d5f Mon Sep 17 00:00:00 2001 From: Anton Date: Wed, 1 Jul 2015 16:58:01 +0700 Subject: [PATCH] Update sample app --- .../java/anton46/sample/MainActivity.java | 93 ++++++++++++------- app/src/main/res/layout/activity_main.xml | 32 +------ app/src/main/res/layout/row.xml | 20 ++++ 3 files changed, 83 insertions(+), 62 deletions(-) create mode 100644 app/src/main/res/layout/row.xml diff --git a/app/src/main/java/anton46/sample/MainActivity.java b/app/src/main/java/anton46/sample/MainActivity.java index 0b5db86..c9ecd9e 100644 --- a/app/src/main/java/anton46/sample/MainActivity.java +++ b/app/src/main/java/anton46/sample/MainActivity.java @@ -2,51 +2,78 @@ import com.anton46.stepsview.StepsView; -import android.graphics.Color; +import android.content.Context; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ArrayAdapter; +import android.widget.ListView; +import android.widget.TextView; public class MainActivity extends AppCompatActivity { - private final String[] steps = {"Step 1", "Step 2", "Step 3", "Step 4"}; - - private final String[] steps1 = {"Step 1", "Step 2", "Step 3"}; - - private final String[] steps2 = {"Step 1", "Step 2", "Step 3", "Step 4", "Step 5"}; - - private StepsView mStepsView; + private final String[] views = {"View 1", "View 2", "View 3", "View 4", "View 5", "View 6", + "View 7", "View 8", "View 9", "View 10", "View 11", "View 12"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); - mStepsView = (StepsView) findViewById(R.id.stepsView0); - mStepsView.setLabels(steps) - .setColorIndicator(Color.GREEN) - .setBarColor(Color.GRAY) - .setLabelColor(Color.BLUE) - .setCompletedPosition(0); - - mStepsView = (StepsView) findViewById(R.id.stepsView1); - mStepsView.setLabels(steps) - .setColorIndicator(getResources().getColor(R.color.blue)) - .setBarColor(Color.DKGRAY) - .setLabelColor(Color.GRAY) - .setCompletedPosition(1); - - mStepsView = (StepsView) findViewById(R.id.stepsView2); - mStepsView.setLabels(steps1) - .setColorIndicator(getResources().getColor(R.color.red)) - .setCompletedPosition(2); - - mStepsView = (StepsView) findViewById(R.id.stepsView3); - mStepsView.setLabels(steps2) - .setColorIndicator(getResources().getColor(R.color.orange)) - .setLabelColor(getResources().getColor(R.color.orange)) - .setCompletedPosition(3); + ListView mListView = (ListView) findViewById(R.id.list); + + MyAdapter adapter = new MyAdapter(this, 0); + adapter.addAll(views); + + mListView.setAdapter(adapter); + + } + + public static class MyAdapter extends ArrayAdapter { + + private final String[] labels = {"Step 1", "Step 2", "Step 3", "Step 4", "Step 5"}; + + public MyAdapter(Context context, int resource) { + super(context, resource); + } + + @Override + public View getView(int position, View convertView, ViewGroup parent) { + ViewHolder holder; + if (convertView == null) { + convertView = LayoutInflater.from(getContext()).inflate(R.layout.row, null); + holder = new ViewHolder(convertView); + convertView.setTag(holder); + } else { + holder = (ViewHolder) convertView.getTag(); + } + + holder.mLabel.setText(getItem(position)); + + holder.mStepsView.setCompletedPosition(position % labels.length) + .setLabels(labels) + .setBarColorIndicator( + getContext().getResources().getColor(R.color.material_blue_grey_800)) + .setProgressColorIndicator(getContext().getResources().getColor(R.color.orange)) + .setLabelColorIndicator(getContext().getResources().getColor(R.color.orange)) + .drawView(); + + return convertView; + } + + static class ViewHolder { + + TextView mLabel; + StepsView mStepsView; + public ViewHolder(View view) { + mLabel = (TextView) view.findViewById(R.id.label); + mStepsView = (StepsView) view.findViewById(R.id.stepsView); + } + } } -} +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index d437555..fddf32a 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -9,35 +9,9 @@ android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity"> - - - - - - - - - - + android:layout_height="match_parent"/> diff --git a/app/src/main/res/layout/row.xml b/app/src/main/res/layout/row.xml new file mode 100644 index 0000000..aada530 --- /dev/null +++ b/app/src/main/res/layout/row.xml @@ -0,0 +1,20 @@ + + + + + + + + \ No newline at end of file