Git Product home page Git Product logo

stepview's People

Contributors

baoyachi avatar bryant1410 avatar yaziedda avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

stepview's Issues

VerticalStepViewIndicator.OnDrawIndicatorListener

一个小问题,虽然在这个控件库中没有问题,但我觉得编程中应该是要注意的。
VerticalStepViewIndicator的onDraw()方法的第二句,mOnDrawListener是由外面设置的,此处使用时需要判断是否为null,在预览widget_vertical_stepsview.xml时可以看到的。

 if (mOnDrawListener!=null){
            mOnDrawListener.onDrawIndicator();
   }

相同的问题有4个。

No label texts appear

This is my example code:

` HorizontalStepView stepViewIndicator = findViewById(R.id.stepViewIndicator);

    List<StepBean> stepsBeanList = new ArrayList<>();
    StepBean stepBean0 = new StepBean("1",1);
    StepBean stepBean1 = new StepBean("2",1);
    StepBean stepBean2 = new StepBean("3",1);
    StepBean stepBean3 = new StepBean("4",0);
    StepBean stepBean4 = new StepBean("5",-1);
    stepsBeanList.add(stepBean0);
    stepsBeanList.add(stepBean1);
    stepsBeanList.add(stepBean2);
    stepsBeanList.add(stepBean3);
    stepsBeanList.add(stepBean4);

    stepViewIndicator
            .setStepViewTexts(stepsBeanList)
            .setTextSize(R.dimen.label_text)
            .setStepsViewIndicatorCompletedLineColor(ContextCompat.getColor(this, android.R.color.white))
            .setStepsViewIndicatorUnCompletedLineColor(ContextCompat.getColor(this, R.color.colorAccentLight))
            .setStepViewComplectedTextColor(ContextCompat.getColor(this, android.R.color.white))
            .setStepViewUnComplectedTextColor(ContextCompat.getColor(this, R.color.colorAccentLight))
            .setStepsViewIndicatorCompleteIcon(ContextCompat.getDrawable(this, R.drawable.complted))
            .setStepsViewIndicatorDefaultIcon(ContextCompat.getDrawable(this, R.drawable.default_icon))
            .setStepsViewIndicatorAttentionIcon(ContextCompat.getDrawable(this, R.drawable.attention));`

<com.baoyachi.stepview.HorizontalStepView android:id="@+id/stepViewIndicator" android:layout_width="match_parent" android:layout_height="90dp" android:layout_centerInParent="true" android:layout_below="@+id/txtSubTitle" />

image

No label texts under icons

Any idea?

rtl support

Hi,

First thanks for this great library, would you please create support for RTL version , without rtl this is waste for me.

I find a strange bug!

when I‘ set stepnum=1 or stepnum=2 ,it's anormal display ?
device-2016-08-05-111222

I just can't find resolution? welcome pull request !

Rotate text to fit horizontal text view

My texts for a single step are too long, such that they overlap. I would like to handle this by rotating the text. This would be a nice feature, which I have not found yet.

HorizontalStepView相关问题

HorizontalStepView怎么没有setStepsViewIndicatorComplectingPosition()这个方法,那HorizontalStepView怎么动态更新完成到哪一步?

stepview大小是否可以控制?

我所尝试的VerticalStepView中xml设置高度使用wrap_content属性不起作用,默认占据了全屏?是否存在此问题?我没看源码,再下小白,也不想看view的绘制流程

Style questions

How to set is not complete or has completed the line styles, rather than set the color

建议

为什么不搞一个取出当前到第几步的方法?
这样不就可以动态实现跑到下一步还是回到上一步

`
public void click(View v){
int currentPosition = stepViewSelf.getStepsViewIndicatorComplectingPosition();
switch (v.getId()){
case R.id.plus:
if(currentPosition == list0.size()-1) return;
stepViewSelf.setStepsViewIndicatorComplectingPosition(++currentPosition);
break;
case R.id.dec:
if(currentPosition == 0) return;
stepViewSelf.setStepsViewIndicatorComplectingPosition(--currentPosition);
break;
}
}

public void setmComplectingPosition(int mComplectingPosition) {
this.mComplectingPosition = mComplectingPosition;
invalidate();
}
`

How to set width HorizontalStepView

Hello,
i have a question, how to custom width the HorizontalStepView or using match_parent?
because its not working like this
screenshot_2017-01-21_11-36-11
thanks before

how to update stepsViewIndicatorComplectingPosition

setpview0.setStepsViewIndicatorComplectingPosition(1)//设置完成的步数 .setStepViewTexts(list0)//总步骤 .setTextSize(16)//set textSize .setStepsViewIndicatorCompletedLineColor(ContextCompat.getColor(getActivity(), android.R.color.white))//设置StepsViewIndicator完成线的颜色 .setStepsViewIndicatorUnCompletedLineColor(ContextCompat.getColor(getActivity(), R.color.uncompleted_text_color))//设置StepsViewIndicator未完成线的颜色 .setStepViewComplectedTextColor(ContextCompat.getColor(getActivity(), android.R.color.white))//设置StepsView text完成线的颜色 ;
i am making one global variable of HorizontalStepView and setting up.

then when user click on button i am calling
`mView.findViewById(R.id.an).setOnClickListener(new View.OnClickListener() {
@OverRide
public void onClick(View view) {
setpview0.setStepsViewIndicatorComplectingPosition(3);

        }
    });` 

but it is not updating

minSdkVersion 16

minSdkVersion 16
这个最小一定要是16的吗,我的项目是15然后gradle导入你这个包冲突了。。。。。

OnClick Listener for Steps?

Hi,

Are the 'StepView' also buttons? wanted clickable steps to switch between multiple steps (& show their current statuses)

Regards,

完成线有问题,颜色有问题

1.当第一个点处在当前运行点时,它后面的线(第一条线)应该是虚线,实际运行是实线
2.除了第一个完成节点外的其它完成节点字体颜色和未完成字体颜色一样,设置不起作用。

How to set StepsViewIndicatorAttention

hi
i want to set StepsViewIndicatorCompleted without moving forward for line? is any way to set ?
so use case is right no i have 3 step so i want set 2nd step as completed but line should be between 1->2 not 2->3

StepView图标问题

StepView每一步的图标能不能改成都可设置?因为有时候每一步的图标都不一,我看源码好像就是每一步都一样(我自己也可以修改哈,只是做个建议)

有办法去掉粗体吗?

默认的字体都是粗体的,在我这个项目里不太协调,请问有方法可以把粗体去除掉吗?

在volley里用的时候 一直报list.size = 0

@DebugLog
    public void getStatus() {
        RequestQueue `requestQueue` = MyVolley.getRequestQueue();
        StringRequest request = new StringRequest(Request.Method.GET, AppConfig.SM_DD_STATUS + "/" + mId, new Response.Listener<String>() {
            @DebugLog
            @Override
            public void onResponse(String response) {
                if (!StringUtils.isEmpty(response))
                    setStepView(new Gson().fromJson(response, SmStatus[].class));
            }
        }, new Response.ErrorListener() {
            @DebugLog
            @Override
            public void onErrorResponse(VolleyError error) {

            }
        });
        requestQueue.add(request);
    }

    @DebugLog
    private void setStepView(SmStatus[] smStatuses) {
        List<String> statusString = new ArrayList<>();
       /* for (SmStatus status :
                smStatuses) {
            statusString.add(status.getStatusId() + "\n" + status.getStatusTime());
        }*/
//        mSmDdDetailStatusView.setStepViewTexts(statusString);
        setView();
    }
@DebugLog
    private void setView() {
        List<String> list0 = new ArrayList<>();
        list0.add("接已提交定案,等待系统确认");
        list0.add("您的商品需要从外地调拨,我们会尽快处理,请耐心等待");
        list0.add("您的订单已经进入亚洲第一仓储中心1号库准备出库");
        list0.add("您的订单预计6月23日送达您的手中,618期间促销火爆,可能影响送货时间,请您谅解,我们会第一时间送到您的手中");
        list0.add("您的订单已打印完毕");
        list0.add("您的订单已拣货完成");
        list0.add("扫描员已经扫描");
        list0.add("打包成功");
        list0.add("配送员【包牙齿】已出发,联系电话【130-0000-0000】,感谢您的耐心等待,参加评价还能赢取好多礼物哦");
        list0.add("感谢你在京东购物,欢迎你下次光临!");

     mSmDdDetailStatusView.setStepsViewIndicatorComplectingPosition(list0.size() - 2)//设置完成的步数
                .reverseDraw(false)//default is true
                .setStepViewTexts(list0)//总步骤
                .setLinePaddingProportion(0.85f)//设置indicator线与线间距的比例系数
                .setStepsViewIndicatorCompletedLineColor(ContextCompat.getColor(getActivity(), android.R.color.white))//设置StepsViewIndicator完成线的颜色
                .setStepsViewIndicatorUnCompletedLineColor(ContextCompat.getColor(getActivity(), R.color.uncompleted_text_color))//设置StepsViewIndicator未完成线的颜色
                .setStepViewComplectedTextColor(ContextCompat.getColor(getActivity(), android.R.color.white))//设置StepsView text完成线的颜色
                .setStepViewUnComplectedTextColor(ContextCompat.getColor(getActivity(), R.color.uncompleted_text_color))//设置StepsView text未完成线的颜色
                .setStepsViewIndicatorCompleteIcon(ContextCompat.getDrawable(getActivity(), R.drawable.complted))//设置StepsViewIndicator CompleteIcon
                .setStepsViewIndicatorDefaultIcon(ContextCompat.getDrawable(getActivity(), R.drawable.default_icon))//设置StepsViewIndicator DefaultIcon
                .setStepsViewIndicatorAttentionIcon(ContextCompat.getDrawable(getActivity(), R.drawable.attention));//设置StepsViewIndicator AttentionIcon
    }
}

6:30:47.364 4157-4157/com.dijiaapp.eat.atext E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.dijiaapp.eat.atext, PID: 4157
java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0
at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:255)
at java.util.ArrayList.get(ArrayList.java:308)
at com.baoyachi.stepview.VerticalStepView.ondrawIndicator(VerticalStepView.java:203)
at com.baoyachi.stepview.VerticalStepViewIndicator.onDraw(VerticalStepViewIndicator.java:193)
at android.view.View.draw(View.java:15278)
at android.view.View.updateDisplayListIfDirty(View.java:14214)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3390)
at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3369)
at android.view.View.updateDisplayListIfDirty(View.java:14174)
at android.view.View.getDisplayList(View.java:14236)
at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:273)
at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:279)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:318)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:2570)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2393)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2023)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1102)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5930)
at and

错别字太多

先提一点吧,错别字太多,代码还在学习,有意见我再继续提。

Any possibility for In Progress Icon

I was looking at your code base and I saw this is where you're setting Default, Attention and Completion. So, I was looking at being able to set inProgress icon. I was looking at the draw icon code. But, need to get a hang of it

/**------------------------------ Draw Icon --------------------------------------------------*/
        for (int i = 0; i < mCircleCentrePointPositionList.size(); i++) {
            final float currentCompletedXPosition = mCircleCentrePointPositionList.get(i);
            mRect = new Rect((int) (mCentreX - mCircleRadius), (int) (currentCompletedXPosition - mCircleRadius), (int) (mCentreX + mCircleRadius), (int) (currentCompletedXPosition + mCircleRadius));
            if (i < mCompletingPosition) {
                mCompleteIcon.setBounds(mRect);
                mCompleteIcon.draw(canvas);
            } else if (i == mCompletingPosition && mCircleCentrePointPositionList.size() != 1) {
                mCompletedPaint.setColor(Color.WHITE);
                canvas.drawCircle(mCentreX, currentCompletedXPosition, mCircleRadius * 1.1f, mCompletedPaint);
                mAttentionIcon.setBounds(mRect);
                mAttentionIcon.draw(canvas);
            } else {
                mDefaultIcon.setBounds(mRect);
                mDefaultIcon.draw(canvas);
            }
        }
        /**------------------------------ End Draw Icon --------------------------------------------------*/

Thanks.

哈哈

读redme的时候,都能感觉你已经嗨飞了

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.