2014-11-20 2 views
2

Привет, я сделал пользовательский вид и lifebarprocess.xml. Я хочу нарисовать жизненный цикл в своем обычном представлении со всеми другими вещами, которые я рисую. Но я не знаю, как:Использовать панель прогресса внутри пользовательского представления?

-Удалить/ссылаться на панель обработки внутри моего представления и как я могу ее нарисовать. -Может изменить progressbar xml?

Обычай вид (короткое замыкание):

public class Gamecontroller_View extends View implements OnGestureListener{ 

private Paint mPaint; 

public Gamecontroller_View(){ 
     mPaint = new Paint(Paint.ANTI_ALIAS_FLAG); 
     mPaint.setColor(Color.BLUE); 
     mPaint.setMaskFilter(new BlurMaskFilter(15, Blur.OUTER)); 
     mPaint.setStyle(Paint.Style.FILL_AND_STROKE); 
} 

    @Override 
     protected void onDraw(Canvas canvas) { 
     super.onDraw(canvas); 

     if (fingerpointer != null){ 
      mPaint.setColor(colors[0]); 
      canvas.drawCircle(fingerpointer.x, fingerpointer.y, 30, mPaint); 
      } 

     //I want to draw a Progressbar's current appearance here 

     } 

} 

lifeprocessbar.xml:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" > 
    <item android:id="@android:id/background"> 
    <shape> 
     <corners android:radius="5dip" /> 
     <gradient 
     android:angle="270" 
     android:centerColor="#ff5a5d5a" 
     android:centerY="0.5" 
     android:endColor="#ff747674" 
     android:startColor="#ff9d9e9d" /> 
    </shape> 
    </item> 
    <item android:id="@android:id/progress"> 
    <clip> 
     <shape> 
     <corners android:radius="5dip" /> 
      <gradient 
      android:angle="0" 
      android:endColor="#ff0000" 
      android:startColor="#ff3300" /> 
     </shape> 
    </clip> 
    </item> 
</layer-list> 

есть также lifebarprocess_layout:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 


     <ProgressBar 
     android:id="@+id/playerlifeprocessbar" 
     style="?android:attr/progressBarStyleHorizontal" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_marginTop="30dp" 
     android:progress="90" 
     android:progressDrawable="@drawable/lifeprocessbar" /> 


</LinearLayout> 

Мои кто-то может помочь - спасибо adavance ,

ответ

1

Возможно, вы захотите рассмотреть вопрос о продлении ViewGroup в вашем Gamecontroller_View вместо вида. Из документации:

ViewGroup является специальным видом, который может содержать другие взгляды (так называемый детей.) Вид группы является базовым классом для макетов и представлений контейнеров.

Смежные вопросы