2017-02-01 8 views
1

내 코드가 kitkat에서 작동하지만 예외는 아닙니다. marshmallow에서 다음과 같은 오류가 발생합니다.Error Seekbar in> = 23

자바 파일

class MyServAdapter extends RecyclerView.Adapter<MyServAdapter.MyViewHolder> { 
    int icons_red[] = {R.drawable.red_service, R.drawable.red_tire, R.drawable.red_oil_car, R.drawable.red_pollutn, R.drawable.red_car_insurance}; 

    public class MyViewHolder extends RecyclerView.ViewHolder { 
     public TextView sevice_name, due_time; 
     public ImageView img; 
     public SeekBar seekBar; 

     public MyViewHolder(View view) { 
      super(view); 
      sevice_name = (TextView) view.findViewById(R.id.serv_name); 
      due_time = (TextView) view.findViewById(R.id.due_date); 
      // servi_time_words = (TextView) view.findViewById(R.id.serv_time_in_words); 
      img = (ImageView) view.findViewById(R.id.serv_icon); 
      seekBar = (SeekBar) view.findViewById(R.id.serv_progress); 
     } 
    } 

    public MyServAdapter(ServiceDetail service_detail) { 
     this.service_detail = service_detail; 
    } 

    @Override 
    public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     View itemView = LayoutInflater.from(parent.getContext()) 
        .inflate(R.layout.custom_service_item, parent, false); //here i'm getting error 
     return new MyViewHolder(itemView); 
    } 
} 

오류 로그 내 XML로

FATAL EXCEPTION: main 
Process: com.eoninfotech.eurotrack, PID: 19864 
    android.view.InflateException: Binary XML file line #39: Binary XML file line #39: Error inflating class SeekBar 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:551) 
    at android.view.LayoutInflater.inflate(LayoutInflater.java:429) 
    at com.eoninfotech.eurotrack.Fragmentss.MyServAdapter.onCreateViewHolder(MyServAdapter.java:53) 
    at com.eoninfotech.eurotrack.Fragmentss.MyServAdapter.onCreateViewHolder(MyServAdapter.java:24) 
    at android.support.v7.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:5836) 
    at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5060) 
    at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4970) 
    at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2029) 
    at android.support.v7.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1414) 
    at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1377) 
    at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:578) 
    at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3315) 
    at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:3124) 
    at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3568) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1742) 
    at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1585) 
    at android.widget.LinearLayout.onLayout(LinearLayout.java:1494) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:344) 
    at android.widget.FrameLayout.onLayout(FrameLayout.java:281) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.support.design.widget.HeaderScrollingViewBehavior.layoutChild(HeaderScrollingViewBehavior.java:131) 
    at android.support.design.widget.ViewOffsetBehavior.onLayoutChild(ViewOffsetBehavior.java:42) 
    at android.support.design.widget.AppBarLayout$ScrollingViewBehavior.onLayoutChild(AppBarLayout.java:1364) 
    at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:846) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:1197) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:344) 
    at android.widget.FrameLayout.onLayout(FrameLayout.java:281) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1742) 
    at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1585) 
    at android.widget.LinearLayout.onLayout(LinearLayout.java:1494) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:344) 
    at android.widget.FrameLayout.onLayout(FrameLayout.java:281) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1742) 
    at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1585) 
    at android.widget.LinearLayout.onLayout(LinearLayout.java:1494) 
    at android.view.View.layout(View.java:17993) 
    at android.view.ViewGroup.layout(ViewGroup.java:5817) 
    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:344) 
    at android.widget.FrameLayout.onLayout(FrameLayout.java:281) 
    at com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:3172) 
    at android.view.View.layout(View.java:1 

내 검색 막대를 사용자 정의는 드로어 블 파일 당김과 drawable-v21 모두에 추가됩니다. Drawble 파일은 이미지의 xml 파일이 아닙니다.

<SeekBar 
    android:id="@+id/serv_progress" 
    android:layout_width="match_parent" 
    android:layout_height="7dp" 
    android:max="100" 
    android:progressDrawable="@drawable/custom_progressbar" 
    android:thumb="@drawable/thumbb" /> 

당김은 -custom_progressbar.xml입니다 :

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 

    <item android:id="@android:id/background"> 
     <shape android:shape="rectangle" > 
      <corners android:radius="5dp" /> 

      <gradient 

       android:endColor="#979797" 
       android:startColor="#979797" /> 
     </shape> 
    </item> 
    <item android:id="@+id/progressshape"> 
     <clip> 
      <shape android:shape="rectangle" > 
       <corners android:radius="5dp" /> 

       <gradient 

        android:endColor="@color/red" 
        android:centerColor="#ffea03" 
        android:startColor="#27e883" /> 
      </shape> 
     </clip> 
    </item> 

</layer-list> 
+0

추가 할 이미지의 크기는 얼마입니까? – OBX

+0

drawable xml 표시 –

+1

'drawable' 폴더에서 이미지를 확인하십시오. 고해상도 이미지입니까? 이 리소스 중 하나에 높은 픽셀 해상도가 있으면 많은 메모리가 필요하다가 부풀려 예외가 발생합니다 – Piyush

답변

0

감사합니다 모든 문제는 내가 SVG로 엄지 손가락을 추가 할 수 없습니다 solved.In 마시 멜로는 다음과 같습니다 | 그래서 android:thumb="@drawable/thumbb"을 제거하고 코드가 실행 중입니다.