2

4つの正方形を作成し、各正方形に小さなボタンを作成します。正方形は表示されている必要があり、境界線が必要です。

4つのボタンを正方形として作成する方法は知っていますが、各正方形の周りに境界線を作成する方法がわかりません。しかし、私はサイズに依存したくないので、ボタンは非常に大きくなっています...

私の例

<?xml version="1.0" encoding="utf-8"?>
<ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent" android:layout_width="fill_parent">
    <RelativeLayout android:id="@+id/magaLoginLayout"
        android:layout_height="fill_parent" android:layout_width="fill_parent">
        <Button android:text="@+id/Button01" android:id="@+id/Button01"
            android:layout_width="160dip" android:layout_height="160dip" android:layout_marginTop="20dip"></Button>
        <Button android:text="@+id/Button03" android:layout_below="@+id/Button01" android:id="@+id/Button03"
            android:layout_alignLeft="@+id/Button01" android:layout_height="160dip" android:layout_width="160dip"></Button>
        <Button android:text="@+id/Button04" android:layout_below="@+id/Button01" android:id="@+id/Button04"
            android:layout_toRightOf="@+id/Button03" android:layout_height="160dip" android:layout_width="160dip"></Button>
        <Button android:text="@+id/Button02" android:id="@+id/Button02" android:layout_width="wrap_content"
            android:layout_toRightOf="@+id/Button01" android:layout_alignTop="@+id/Button01" android:layout_alignParentRight="true" android:layout_height="160dip"></Button>


</RelativeLayout>

ここに画像の説明を入力してください

4

2 に答える 2

7

このスクリーンショットのようなレイアウトを作成しますか?

これは、Call & Sms Blocker という名前の私のアプリのレイアウトです。

このレイアウトのコード:

  1. main_screen.xml

     <?xml version="1.0" encoding="utf-8"?>
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
           android:layout_width="match_parent"
           android:layout_height="match_parent"
           android:background="@drawable/bgimage2" >
    
       <TextView
         android:id="@+id/textView1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_alignParentTop="true"
         android:layout_centerHorizontal="true"
         android:layout_marginTop="29dp"
         android:text="Call & SMS Blocker" 
         android:textAppearance="?android:attr/textAppearanceLarge"
         android:textSize="40dp"
         android:textStyle="bold" /> 
    
      <Button 
       android:id="@+id/blocked_sms"
       android:layout_width="162dp" 
       android:layout_height="162dp"
       android:layout_marginLeft="50dp"
       android:layout_marginTop="120dp"
       android:background="@drawable/buttoneffects" 
       android:focusable="true" 
       android:textColor="#000000" 
       android:textStyle="bold" /> 
    
     <ImageButton
      android:id="@+id/imagebutton1" 
      style="?android:attr/buttonStyleSmall" 
      android:layout_width="50dp" 
      android:layout_height="50dp"
      android:layout_alignTop="@+id/blocked_sms" 
      android:layout_centerHorizontal="true" 
      android:layout_marginTop="136dp" 
      android:background="@drawable/buttoneffectpower" /> 
    
      <Button 
         android:id="@+id/blocked_calls"
         android:layout_width="162dp" 
         android:layout_height="162dp" 
         android:layout_alignBaseline="@+id/blocked_sms"
         android:layout_alignBottom="@+id/blocked_sms"
         android:layout_alignParentRight="true" 
         android:layout_marginRight="50dp"
         android:background="@drawable/buttoneffectssecond" 
         android:focusable="true" android:text="Blocked Calls"
         android:textColor="#000000" 
         android:textStyle="bold" /> 
    
      <Button 
         android:id="@+id/settings" 
         android:layout_width="162dp" 
         android:layout_height="162dp" 
         android:layout_alignLeft="@+id/blocked_calls"
         android:layout_below="@+id/imagebutton1" 
         android:layout_marginRight="50dp"
         android:background="@drawable/buttoneffectfourth" 
         android:focusable="true" android:text="Settings" 
         android:textColor="#000000" android:textStyle="bold" /> 
    
     <Button 
      android:id="@+id/blacklist" 
      android:layout_width="162dp" 
      android:layout_height="162dp" 
      android:layout_alignBaseline="@+id/settings"
       android:layout_alignBottom="@+id/settings" 
      android:layout_marginLeft="50dp" 
       android:layout_toLeftOf="@+id/imagebutton1"
      android:background="@drawable/buttoneffectthird" 
      android:focusable="true" 
      android:text="Blacklist" 
      android:textColor="#000000" 
      android:textStyle="bold" /> 
    
      <Button 
        android:id="@+id/help" 
        android:layout_width="150dp" 
        android:layout_height="70dp" 
        android:layout_alignLeft="@+id/blocked_sms"
     android:layout_alignParentBottom="true" 
     android:layout_marginBottom="69dp"
     android:background="@drawable/buttoneffectsimple" 
     android:focusable="true" 
     android:text="Help" 
     android:textColor="#000000" 
     android:textStyle="bold" /> 
    
       <Button 
      android:id="@+id/block_last_number" 
      android:layout_width="330dp" 
      android:layout_height="70dp" 
      android:layout_above="@+id/help" 
      android:layout_alignLeft="@+id/help" 
      android:layout_alignRight="@+id/settings" 
      android:layout_marginBottom="27dp"
      android:background="@drawable/buttoneffectsimple" 
      android:focusable="true" 
      android:text="Block Last Number" 
      android:textColor="#000000" 
      android:textStyle="bold" /> 
    
       <Button 
     android:id="@+id/aboutus" 
     android:layout_width="150dp" 
     android:layout_height="70dp" 
     android:layout_alignBaseline="@+id/help" 
     android:layout_alignBottom="@+id/help"
     android:layout_alignRight="@+id/block_last_number"
     android:background="@drawable/buttoneffectsimple" 
     android:focusable="true" 
     android:text="About Us" 
     android:textColor="#000000" 
     android:textStyle="bold" /> 
    
    </RelativeLayout>
    

ボタン効果のコード (xml ファイルのレイアウト):

    <Selector>
        <item android:drawable="@drawable/blockedsms"><shape>
        <solid android:color="#fff" />

        <stroke android:width="1px" android:color="#444" />

        <corners android:radius="6dp" />

        <gradient android:angle="270" android:endColor="#10000000"
           android:startColor="#10FFFFFF" />

        <corners android:bottomRightRadius="50dp" />
    </shape></item>

       </selector>

他のxmlボタンエフェクトレイアウトでは、変更する必要があります

      <corners android:bottomLeftRadius 
      <corners android:topRightRadius
      <corners android:topLeftRadius

      and so on......

望み!これは役に立ちます。乾杯 !!!

于 2012-09-23T18:52:44.497 に答える
6

ボーダー部分はご質問へのコメントで回答されているようですので、レイアウト部分の回答を以下に示します。

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

    <TableRow
        android:id="@+id/TableRow01"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1" >

        <Button
            android:id="@+id/Button02"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_margin="20dp"
            android:layout_weight="1"
            android:text="Button" />

        <Button
            android:id="@+id/Button01"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_margin="20dp"
            android:layout_weight="1"
            android:text="Button" />
    </TableRow>

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1" >

        <Button
            android:id="@+id/button2"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_margin="20dp"
            android:layout_weight="1"
            android:text="Button" />

        <Button
            android:id="@+id/button1"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_margin="20dp"
            android:layout_weight="1"
            android:text="Button" />
    </TableRow>

</TableLayout>

このレイアウトは、画面のサイズや、横向きモードか縦向きモードかには依存しません。ボタンの周囲に独自のマージンを定義してください ;-)

コメントの境界線を使用するには、次を追加します。

android:background="@drawable/back"

ボタンに。back は、作成した形状の名前です。

于 2012-09-23T19:35:20.093 に答える