Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 显示seekbar的上一个值大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在数据库中存储了一些评级.无论何时移动搜索栏,那么这些评级都会显示在textview中.但问题是每当我向后移动拇指时,都不会显示向后的值.它只显示最后一个值.如何显示评级当我向后移动拇指时.我试过的代码是 –

public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceStatE) 
    {
        view = inflater.inflate(R.layout.interval,container,falsE);
        seekbar=(SeekBar)view.findViewById(R.id.seekBar1);
        ques = (TextView)view. findViewById(R.id.question);
        textrating=(TextView)view.findViewById(R.id.textrating);
        /*l1=(LinearLayout)view.findViewById(R.id.linear);*/
        db=new DatabaseHandler(getActivity());
        retrieveQuestion();
        retrieverating();
        seekbar.setProgress(0);
        seekbar.incrementProgressBy(diff);
        seekbar.setMax(ratinglast);

        seekbar.setOnSeekBarchangelistener(new OnSeekBarchangelistener()
        {

            @Override
            public void onProgressChanged(SeekBar seekbar,int progress,Boolean fromuser) 
            {
                 Log.e("DEBUG","Progress is: "+progress);
                 if(j<len)
                 {
                     progress=rating[j];
                     j++;
                     textrating.setText(""+progress);
                 }




            }

            @Override
            public void onStartTrackingTouch(SeekBar seekbar) {
                // TODO Auto-generated method stub

            }

            @Override
            public void onStopTrackingTouch(SeekBar seekbar) 
            {
                // TODO Auto-generated method stub


        }

        });


         return view;
    }

    void retrieveQuestion()
    {
        db.open();
        cursor c=db.getQuestion(username,surveyName,SELEctedQues,question_no);
        if(c.moveToFirst())
        {
            int index=c.getcolumnIndex("question");
            question1= c.getString(indeX);
            ques.setText(question1);
        }

    }

    public void retrieverating()
    {
        cursor c=db.getAnswer(username,question_no);
        len=c.getCount();
        Log.e("len",""+len);
        if(c.moveToFirst())
        {
            do
            {
                int index=c.getcolumnIndex("answer");
                rating[i]=c.geTint(indeX);
                Log.e("i",""+i);
                Log.e("rating in do while",""+rating[i]);
                i++;
            }while(c.moveToNext());
        }
        rating1=rating[0];
        rating2=rating[1];
        diff=rating2-rating1;
        Log.e("diff",""+diff);
        ratinglast=rating[len-1];
        Log.e("ratinglast",""+ratinglast);
    }
}

解决方法

我找到了一个替代解决方案来解决我的问题 –

我实现的代码是:

public View onCreateView(LayoutInflater inflater,Bundle savedInstanceStatE) 
                {
                    view = inflater.inflate(R.layout.interval,falsE);
                    seekbar=(SeekBar)view.findViewById(R.id.seekBar1);
                    ques = (TextView)view. findViewById(R.id.question);
                    textrating=(TextView)view.findViewById(R.id.textrating);
                    db=new DatabaseHandler(getActivity());
                    retrieveQuestion();
                    retrieverating();
                    seekbar.setProgress(0);
                    //ratinglast is last rating
                    seekbar.setMax(ratinglast);

                    seekbar.setOnSeekBarchangelistener(new OnSeekBarchangelistener()
                    {

                        @Override
                        public void onProgressChanged(SeekBar seekbar,Boolean fromuser) 
                        {
                             Log.e("DEBUG","Progress is: "+progress);
                            //diff is difference between two ratings.
                             progress = ((int)R_455_11845@ath.round(progress/diff ))*diff;
                             seekbar.setProgress(progress);
                             textrating.setText(progress + "");
            }
            @Override
                        public void onStartTrackingTouch(SeekBar seekbar) {
                            // TODO Auto-generated method stub
                        }

                        @Override
                        public void onStopTrackingTouch(SeekBar seekbar) 
                        {

                        }
                    });
                    return view;
                }
        //Method to retrieve rating from sqlite database
        public void retrieverating()
            {
                cursor c=db.getAnswer(username,question_no);
                len=c.getCount();
                Log.e("len",""+len);
                if(c.moveToFirst())
                {
                    do
                    {
                        int index=c.getcolumnIndex("answer");
                        rating[i]=c.geTint(indeX);
                        Log.e("i",""+i);
                        Log.e("rating in do while",""+rating[i]);
                        i++;
                    }while(c.moveToNext());
                }
                rating1=rating[0];
                rating2=rating[1];
                diff=rating2-rating1;
                Log.e("diff",""+diff);
                ratinglast=rating[len-1];
                Log.e("ratinglast",""+ratinglast);
            }

大佬总结

以上是大佬教程为你收集整理的android – 显示seekbar的上一个值全部内容,希望文章能够帮你解决android – 显示seekbar的上一个值所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。