2013-05-30 2 views
0

Я использую com.google.zxing.client.android.ViewfinderView, он отлично работает, но говорит о представлении. Я запускаю сканирование кода после нажатия кнопки и открывается камера на текущей активности в диалоговом окне размера 250x250. Но проблема в том, что штрих-код RED-линия не появляется в центре, а перемещается наполовину прямо в диалоговое окно, которое я пытался поместить все возможные значения в XML, но напрасно, я представляю exl и изображение, чтобы показать, как это выглядит какcom.google.zxing.client.android.ViewfinderView выборочная проблема с заполнением диалогового окна

XML

<?xml version="1.0" encoding="UTF-8"?> 
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="250dp" 
android:layout_height="250dp" > 

<SurfaceView 
    android:id="@+id/preview_view" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" /> 

<com.google.zxing.client.android.ViewfinderView 
    android:id="@+id/viewfinder_view" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" /> 

<LinearLayout 
    android:id="@+id/result_view" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="@color/result_view" 
    android:baselineAligned="false" 
    android:orientation="vertical" 
    android:visibility="gone" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:orientation="horizontal" 
     android:padding="@dimen/standard_padding" > 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="fill_parent" 
      android:gravity="right|center_vertical" 
      android:orientation="vertical" > 

      <ImageView 
       android:id="@+id/barcode_image_view" 
       android:layout_width="160dip" 
       android:layout_height="160dip" 
       android:layout_marginBottom="@dimen/half_padding" 
       android:adjustViewBounds="true" 
       android:maxHeight="160dip" 
       android:maxWidth="160dip" 
       android:scaleType="centerInside" /> 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:paddingRight="@dimen/half_padding" 
        android:text="@string/msg_default_format" 
        android:textColor="@color/result_minor_text" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/format_text_view" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:textColor="@color/result_minor_text" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:paddingRight="@dimen/half_padding" 
        android:text="@string/msg_default_type" 
        android:textColor="@color/result_minor_text" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/type_text_view" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:textColor="@color/result_minor_text" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:paddingRight="@dimen/half_padding" 
        android:text="@string/msg_default_time" 
        android:textColor="@color/result_minor_text" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/time_text_view" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:textColor="@color/result_minor_text" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <TextView 
        android:id="@+id/meta_text_view_label" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:paddingRight="@dimen/half_padding" 
        android:text="@string/msg_default_meta" 
        android:textColor="@color/result_minor_text" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/meta_text_view" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:textColor="@color/result_minor_text" /> 
      </LinearLayout> 
     </LinearLayout> 

     <ScrollView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" > 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="vertical" > 

       <TextView 
        android:id="@+id/contents_text_view" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:autoLink="web" 
        android:paddingLeft="12dip" 
        android:textColor="@color/result_text" 
        android:textColorLink="@color/result_text" 
        android:textSize="22sp" /> 

       <TextView 
        android:id="@+id/contents_supplement_text_view" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:autoLink="web" 
        android:paddingLeft="12dip" 
        android:textColor="@color/result_text" 
        android:textColorLink="@color/result_text" /> 
      </LinearLayout> 
     </ScrollView> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/result_button_view" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:gravity="center" 
     android:orientation="horizontal" > 

     <Button 
      android:layout_width="0dip" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:visibility="gone" /> 

     <Button 
      android:layout_width="0dip" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:visibility="gone" /> 

     <Button 
      android:layout_width="0dip" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:visibility="gone" /> 

     <Button 
      android:layout_width="0dip" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:visibility="gone" /> 

     <Button 
      android:id="@+id/shopper_button" 
      android:layout_width="0dip" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:drawableLeft="@drawable/shopper_icon" 
      android:text="@string/button_google_shopper" 
      android:visibility="gone" /> 
    </LinearLayout> 
</LinearLayout> 

<TextView 
    android:id="@+id/status_view" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="bottom|center_horizontal" 
    android:background="@color/transparent" 
    android:text="@string/msg_default_status" 
    android:textColor="@color/status_text" /> 

    </FrameLayout> 

это изображение я получаю в результате ...

enter image description here

мне нужно, что красная линия находиться в центре ...

ответ

0

Вам нужно избавиться от атрибута padding. Проверьте приведенный ниже фрагмент кода.

 <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:gravity="center" 
     android:orientation="horizontal"> 
+0

Хорошо, если вы можете предоставить более подробную информацию о файле XML. – MCF

+0

Я отредактировал файл XML, чтобы поместить туда весь файл ... см. Это, и удаление @MCF удалений не приносило пользы ... – Saqib

+0

Возможно, вам, возможно, придется использовать RelativeLayout для представления, содержащего RED Line. Вы не можете сделать внутренний вид в центре LinearLayouts. В RelativeLayouts вы сможете центрировать внутренние виды. Что такое android: id, который содержит RED Line? – MCF