Макеты виджетов Android - PullRequest
       29

Макеты виджетов Android

0 голосов
/ 28 ноября 2011

Я изо всех сил пытался создать макеты Android, и я все еще ищу действительно солидный учебник, содержащий полезные примеры.

В настоящее время я пытаюсь создать виджет, похожий на многие из существующих Androidвиджеты на рынке.Например, простой виджет погоды, который содержит температуру в правой части виджета (рядом с изображением) и общий текст в правой части виджета, который содержит дополнительную информацию, такую ​​как прогноз.У меня есть следующий код, и мое изображение не загружается правильно.Текст не загружается на виджет также.Может ли кто-нибудь помочь мне, чтобы я мог хотя бы увидеть изображение и часть текста:

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/widget"
    android:layout_width="fill_parent"
    android:orientation="horizontal"
    android:background="@drawable/appwidget_bg" 
    android:layout_height="fill_parent">

    <ImageButton 
    android:id="@+id/message_button"
    android:layout_width="100px"
    android:layout_height="wrap_content"
    android:src="@drawable/messages"
    android:scaleType="fitXY"
    />

   <ImageView
       android:id="@+id/divider"
       android:layout_width="1dip"
       android:layout_height="match_parent"
       android:background="@drawable/appwidget_divider"
       android:layout_alignRight="@+id/message_button"
       />    
   <TextView 
        android:id="@+id/current_kw"
        android:layout_toRightOf="@+id/divider"
        android:layout_width="80px"
        android:layout_height="wrap_content"
        android:textSize="18dp"
        android:textColor="#ffffff"
        android:typeface="sans"
        android:text="TBD"
        android:gravity="center_horizontal|center_vertical"
    />  

    <ImageView
       android:id="@+id/divider2"
       android:layout_width="1dip"
       android:layout_height="match_parent"
       android:background="@drawable/appwidget_divider"
       android:layout_alignRight="@+id/current_kw"
       />       

    <TextView 
          android:id="@+id/temp"
          android:layout_toRightOf="@+id/divider2"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:gravity="center_horizontal"
          android:textSize="10sp"
          android:textColor="#ffffff"
          android:paddingLeft="1dp"
          android:fadingEdgeLength="2dip"
          android:text="Temperature"
         />    

        <TextView 
            android:id="@+id/estimate_cost"
            android:layout_toRightOf="@+id/current_kw"
            android:layout_below="@+id/temp"
            android:paddingLeft="1dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Your estimated cost:"
            android:textSize="10sp"
            android:gravity="center_horizontal"
            android:layout_weight="1.0"
           />

        <TextView
         android:id="@+id/communitysize"
         android:layout_toRightOf="@+id/current_kw"
         android:layout_below="@+id/estimate_cost"
         android:text="Size of the community: "
         android:textSize="10sp"
         android:paddingTop="1dp"
         android:layout_width="wrap_content"
         android:gravity="center_horizontal"
         android:layout_height="wrap_content" /> 

</RelativeLayout>

1 Ответ

1 голос
/ 28 ноября 2011

Попробуйте учебник

     <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/icon"
    android:orientation="horizontal" >

    <ImageButton 
    android:id="@+id/message_button"
    android:layout_centerVertical="true"
    android:layout_width="0dip"
    android:layout_height="75dip"
    android:layout_weight="1.0"
    android:src="@drawable/icon"
    android:scaleType="center"
    />
<LinearLayout
    android:id="@+id/linearLayout2" 
    android:layout_width="0dip"
    android:layout_weight="2"
    android:layout_height="fill_parent" 
    android:orientation="vertical"
    android:layout_gravity="center_vertical"
    android:paddingLeft="18dip"
    android:paddingRight="8dip"
   >
   <ImageView
       android:layout_width="1dip"
       android:layout_height="wrap_content"
       android:background="@drawable/icon"
       />    

    <TextView 
          android:id="@+id/temp"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:textSize="12sp"
          android:textColor="#000000"
          android:singleLine="true"
          android:fadingEdge="horizontal"
          android:fadingEdgeLength="2dip"
          android:text="TBD"
          android:ellipsize="none"
         />    
         <TextView 
            android:id="@+id/communitystatus"
            android:textSize="12sp"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:lines="1"
            android:ellipsize="marquee"
            android:fadingEdge="horizontal"
            android:marqueeRepeatLimit="marquee_forever"
            android:scrollHorizontally="true"

            android:focusable="true"
            android:focusableInTouchMode="true"
            android:textColor="#000000"
            android:text="Simple application that shows how to use marquee, with a long text"
         />
        <TextView
         android:id="@+id/communitysize"
         android:text="Size of the community: "
         android:textSize="12sp"
         android:layout_below="@+id/CommunityStatusHeader"
         android:paddingTop="5dp"
         android:layout_width="wrap_content"
         android:gravity="center_horizontal"
         android:layout_height="wrap_content" android:textColor="#000000"/> 
        <TextView 
            android:id="@+id/estimate_cost"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Your estimated cost:"
            android:textSize="12sp"
            android:layout_weight="1.0"
            android:typeface="sans" 
            android:gravity="center_horizontal" 
            android:textColor="#000000"/>
</LinearLayout>
</LinearLayout>
...