Back to project page Joetz-Android-V2.
The source code is released under:
GNU General Public License
If you think the Android project Joetz-Android-V2 listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.example.jens.myapplication.camps; //from w ww. j a v a 2 s .co m import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; import android.widget.FrameLayout; import android.widget.TextView; import com.example.jens.myapplication.R; import com.example.jens.myapplication.lib.RangeSeekBar; import java.text.NumberFormat; /** * Use FilterFragment instead */ @Deprecated public class CampFilterActivity extends Activity { public static final String RES_PRICE_MIN = "minprice"; public static final String RES_PRICE_MAX = "maxprice"; public static final String ARG_PRICE_MIN = "minpricestart"; public static final String ARG_PRICE_MAX = "maxpricestart"; public static final String ARG_PRICE_CURMIN = "curminprice"; public static final String ARG_PRICE_CURMAX = "curmaxprice"; public static final String RES_AGE_MIN = "minage"; public static final String RES_AGE_MAX = "maxage"; public static final String ARG_AGE_MIN = "minagestart"; public static final String ARG_AGE_MAX = "maxagestart"; public static final String ARG_AGE_CURMIN = "curminage"; public static final String ARG_AGE_CURMAX = "curmaxage"; private static final int priceDivisor = 5; private RangeSeekBar<Integer> mBarPrice; private RangeSeekBar<Integer> mBarAge; private TextView mTxtMinPrice; private TextView mTxtMaxPrice; private int mMinPrice; private int mMaxPrice; private TextView mTxtMinAge; private TextView mTxtMaxAge; private int mMinAge; private int mMaxAge; private Button mBtnFilter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_camp_filter); mTxtMinPrice = (TextView) findViewById(R.id.lblMinPrice); mTxtMaxPrice = (TextView) findViewById(R.id.lblMaxPrice); mMinPrice = getIntent().getIntExtra(ARG_PRICE_MIN, 0); mMaxPrice = getIntent().getIntExtra(ARG_PRICE_MAX, Integer.MAX_VALUE); mTxtMinAge = (TextView) findViewById(R.id.lblMinAge); mTxtMaxAge = (TextView) findViewById(R.id.lblMaxAge); mMinAge = getIntent().getIntExtra(ARG_AGE_MIN, 0); mMaxAge = getIntent().getIntExtra(ARG_AGE_MAX, Integer.MAX_VALUE); mBtnFilter = (Button) findViewById(R.id.btnFilter); mBtnFilter.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { finishActivity(); } }); mBarPrice = new RangeSeekBar<Integer>( mMinPrice / priceDivisor, mMaxPrice / priceDivisor + 1, this); mBarPrice.setOnRangeSeekBarChangeListener(new RangeSeekBar.OnRangeSeekBarChangeListener<Integer>() { @Override public void onRangeSeekBarValuesChanged(RangeSeekBar<?> bar, Integer minValue, Integer maxValue) { // handle changed range values setPriceFields(minValue, maxValue); } }); mBarPrice.setSelectedMinValue(getIntent().getIntExtra(ARG_PRICE_CURMIN, Integer.MIN_VALUE) / priceDivisor); mBarPrice.setSelectedMaxValue(getIntent().getIntExtra(ARG_PRICE_CURMAX, Integer.MAX_VALUE) / priceDivisor); // add RangeSeekBar to pre-defined layout FrameLayout.LayoutParams paramsPrice = new FrameLayout.LayoutParams( FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT); FrameLayout framePriceBar = (FrameLayout) findViewById(R.id.framePriceBar); framePriceBar.removeAllViews(); framePriceBar.addView(mBarPrice, paramsPrice); //setPriceFields(mMinPrice / priceDivisor, mMaxPrice / priceDivisor); setPriceFields(mBarPrice.getSelectedMinValue(), mBarPrice.getSelectedMaxValue()); mBarAge = new RangeSeekBar<Integer>(mMinAge, mMaxAge, this); mBarAge.setOnRangeSeekBarChangeListener(new RangeSeekBar.OnRangeSeekBarChangeListener<Integer>() { @Override public void onRangeSeekBarValuesChanged(RangeSeekBar<?> bar, Integer minValue, Integer maxValue) { setAgeFields(minValue, maxValue); } }); mBarAge.setSelectedMinValue(getIntent().getIntExtra(ARG_AGE_CURMIN, Integer.MIN_VALUE)); mBarAge.setSelectedMaxValue(getIntent().getIntExtra(ARG_AGE_CURMAX, Integer.MAX_VALUE)); FrameLayout.LayoutParams paramsAge = new FrameLayout.LayoutParams( FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT); FrameLayout frameAgeBar = (FrameLayout) findViewById(R.id.frameAgeBar); frameAgeBar.removeAllViews(); frameAgeBar.addView(mBarAge, paramsAge); setAgeFields(mBarAge.getSelectedMinValue(), mBarAge.getSelectedMaxValue()); } private void setPriceFields(int minValue, int maxValue){ NumberFormat formatter = NumberFormat.getCurrencyInstance(); mTxtMinPrice.setText(formatter.format(minValue * priceDivisor)); mTxtMaxPrice.setText(formatter.format(maxValue * priceDivisor)); } private void setAgeFields(int minValue, int maxValue){ mTxtMinAge.setText(String.valueOf(minValue)); mTxtMaxAge.setText(String.valueOf(maxValue)); } private void finishActivity(){ Intent data = new Intent(); data.putExtra(RES_PRICE_MIN, mBarPrice.getSelectedMinValue() * priceDivisor); data.putExtra(RES_PRICE_MAX, mBarPrice.getSelectedMaxValue() * priceDivisor); data.putExtra(RES_AGE_MIN, mBarAge.getSelectedMinValue()); data.putExtra(RES_AGE_MAX, mBarAge.getSelectedMaxValue()); setResult(RESULT_OK, data); finish(); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.camp_filter, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } }