精华内容
下载资源
问答
  • Android Studio基本UI界面设计

    万次阅读 2018-06-19 16:16:55
    实验对标题的要求如下:1 标题字体大小 20sp(android:textSize="20sp")2 与顶部距离 20dp (与父容器顶部对齐后再设置与顶部距离20dp) 3 居中 (与父容器左右都对齐后即可) (2)图片 建立一...

    按照课本上敲得最简单的那个页面的一个小小的雏形



    给他完善一下


    (1)标题  

    首先我们建立一个TextView控件来写标题。

    实验对标题的要求如下:

    1 标题字体大小 20sp(android:textSize="20sp"

    2 与顶部距离 20dp  (与父容器顶部对齐后再设置与顶部距离20dp)

     

    3 居中 (与父容器左右都对齐后即可)

     

    (2)图片  

    建立一个ImageView控件来写标题。先将图片复制到res/drawable目录下,然后通过app:srcCompat="@drawable/sysu"来引用。

    实验对图片的要求如下:

    1 图片与标题的间距为 20dp (先将图片顶部与标题底部对齐,再设置20dp的间距)

     

    2 居中 (与父容器左右都对齐后即可)

    (3)输入框  

    先建立两个TextView控件,用来写“学号”和“密码”。“学号”(user_id)控件放在距离图片20dp,与屏幕左边也距离20dp。

     

    “密码”(user_pwd)控件放在user_id下方20dp处,用以实现上下两栏间距 20dp。

     

    接着设置建立两个EditView控件,用来输入学号和密码。

    输入学号的控件布局设置如下:

     

    由上面代码可知道,我们将其放在user_id控件右边,同时距离屏幕右边20dp。但是下划线长度一直保持跟hint字数长短一致,查阅资料后,将layout_width的属性由wrap_content改为fill_parent才使得下划线由下图左的状态变为下图右。

        

    输入密码的控件布局设置如法炮制即可。

    同时注意以下两点:

    1 学号对应的 EditText 只能输入数字:android:digits="2015317200527"

    2 密码对应的 EditText 输入方式为密码:android:password="true"

    3 下划线上面固定的字体应这样设置:android:hint="请输入学号(密码)"

    实现效果如下:

     

    (4)单选按钮 

    由于是单选按钮,所以我们先建立一个RadioGroup,之后再在里面建立两个单选按钮RadioButton。先让RadioGroup与容器左右都对齐,这样能实现两个单选按钮整体居中。对第2个按钮设置android:layout_marginLeft="10dp",使得两个按钮间距10dp。因为要求默认选中的按钮为第一个,所以对第一个按钮设置android:checked="true"

    实现效果如下:

     

     

    (5)按钮  

    因为无法实现两个按钮整体居中(也许可以通过数值坐标设定使得看起来“居中”,但是不够准确...),于是先设置了一个id为“button_box”的View控件并使其居中,然后再将两个按钮放入其中。View的布局就是将其放在RadioGroup下方20dp处并居中,代码便不放了。

    接下来就是建立两个Button控件,将第一个button与View左上对齐,第二个button设置其左边与第一个button右边距离10dp,从而实现按钮间的间距为10dp。

     

    实验要求“按钮背景框左右边框与文字间距 10dp,上下边框与文字间距 5dp,圆角半径 10dp,背景色为#3F51B5”,本来是想在button控件下直接设置的,但是无法实现。后来查阅资料后才找到以下的解决方法:

    先是在res/drawable下新建一个shape.xml文件,在里面写上background属性设置:

    然后返回activity_main.xml文件,在button控件下进行引用:

     

    实现效果如下:




    展开全文
  • Android Studio:基本UI界面设计 (详细)

    万次阅读 多人点赞 2017-12-02 15:01:06
    基本UI界面设计 二、 实现内容 实现一个 Android 应用,界面呈现如下效果:   三、 实验过程 (1)标题  首先我们建立一个TextView控件来写标题。 实验对标题的要求如下:  标题字体大小 20sp(android:...

    一、 实验题目 

    基本UI界面设计

    二、 实现内容

    实现一个 Android 应用,界面呈现如下效果:

        

    三、 实验过程

    (1)标题  

    首先我们建立一个TextView控件来写标题。

    实验对标题的要求如下:

    1 标题字体大小 20sp(android:textSize="20sp"

    2 与顶部距离 20dp  (与父容器顶部对齐后再设置与顶部距离20dp)

     

    3 居中 (与父容器左右都对齐后即可)

     

    实现效果如下:

     

     

    (2)图片  

    建立一个ImageView控件来写标题。先将图片复制到res/drawable目录下,然后通过app:srcCompat="@drawable/sysu"来引用。

    实验对图片的要求如下:

    1 图片与标题的间距为 20dp (先将图片顶部与标题底部对齐,再设置20dp的间距)

     

    2 居中 (与父容器左右都对齐后即可,就不再放代码了)

     实现效果如下:

     

     

    (3)输入框  

    先建立两个TextView控件,用来写“学号”和“密码”。“学号”(user_id)控件放在距离图片20dp,与屏幕左边也距离20dp。

     

    “密码”(user_pwd)控件放在user_id下方20dp处,用以实现上下两栏间距 20dp。

     

    接着设置建立两个EditView控件,用来输入学号和密码。

    输入学号的控件布局设置如下:

     

    由上面代码可知道,我们将其放在user_id控件右边,同时距离屏幕右边20dp。但是下划线长度一直保持跟hint字数长短一致,查阅资料后,将layout_width的属性由wrap_content改为fill_parent才使得下划线由下图左的状态变为下图右。

        

    输入密码的控件布局设置如法炮制即可。

    同时注意以下两点:

    1 学号对应的 EditText 只能输入数字:android:digits="0123456789"

    2 密码对应的 EditText 输入方式为密码:android:password="true"

    3 下划线上面固定的字体应这样设置:android:hint="请输入学号(密码)"

    实现效果如下:

     

     

    (4)单选按钮 

    由于是单选按钮,所以我们先建立一个RadioGroup,之后再在里面建立两个单选按钮RadioButton。先让RadioGroup与容器左右都对齐,这样能实现两个单选按钮整体居中。对第2个按钮设置android:layout_marginLeft="10dp",使得两个按钮间距10dp。因为要求默认选中的按钮为第一个,所以对第一个按钮设置android:checked="true"

    实现效果如下:

     

     

    (5)按钮  

    因为我无法实现两个按钮整体居中(也许可以通过数值坐标设定使得看起来“居中”,但是不够准确...),于是我先设置了一个id为“button_box”的View控件并使其居中,然后再将两个按钮放入其中。View的布局就是将其放在RadioGroup下方20dp处并居中,代码便不放了。

    接下来就是建立两个Button控件,将第一个button与View左上对齐,第二个button设置其左边与第一个button右边距离10dp,从而实现按钮间的间距为10dp。

     

    实验要求“按钮背景框左右边框与文字间距 10dp,上下边框与文字间距 5dp,圆角半径 10dp,背景色为#3F51B5”,本来是想在button控件下直接设置的,但是无法实现。后来查阅资料后才找到以下的解决方法:

    先是在res/drawable下新建一个shape.xml文件,在里面写上background属性设置:


    然后返回activity_main.xml文件,在button控件下进行引用:

     

    实现效果如下:

    (这里的圆角框有点被虚线挡住)

     

    (6)实验结果

    在Android Studio的布局为图1。将app导入手机中运行结果如图2(手机截图)。

    图1 图2

     

    四、 实验思考及感想

    1  在做实验之前,我并没有好好看下载包里的实验文档,只是粗略看了下实验要求便开始着手打代码。实验中途遇到了一些不了解的困难也都是自己手动搜索了蛮久才找到适合的解决方案,有点费时费力。后来实验做完了又浏览了下实验文档,才发现里面讲了很多关于布局和控件的知识点,如果早点看到就不用浪费自己那么多精力去搜索相应的知识点了。以后每次实验一定要先仔细看看实验文档,做好基础打底。另外,设置RadioButton时漏看了“默认第一个按钮已选中”这个要求,添加代码之后也得顺道把实验报告里相关截图重新改了,实在麻烦,以后须更加细心。

    2  之前选修过web课程,在AS上进行控件布局时发现了其与网页CSS布局有很多相同之处,包括位置的约束、属性的设定。这使得我更容易去理解、学会UI布局。编程开发大抵都有相通之处吧。

    最后放上代码。

    activity_main.xml 

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.example.yc.sysu.MainActivity">
    
        <TextView
            android:id="@+id/title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="中山大学学生信息系统"
            android:textSize="20sp"
            android:textColor="#000000"
            app:layout_constraintTop_toTopOf="parent"
            android:layout_marginTop="20dp"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"/>
    
        <ImageView
            android:id="@+id/icon"
            android:layout_width="104dp"
            android:layout_height="104dp"
            app:srcCompat="@drawable/sysu"
            app:layout_constraintTop_toBottomOf="@id/title"
            android:layout_marginTop="20dp"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent" />
    
        <TextView
            android:id="@+id/user_id"
            android:text="学号:"
            android:textColor="#000000"
            android:textSize="18sp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintLeft_toLeftOf="parent"
            android:layout_marginLeft="20dp"
            app:layout_constraintTop_toBottomOf="@id/icon"
            android:layout_marginTop="20dp" />
    
        <TextView
            android:id="@+id/user_pwd"
            android:text="密码:"
            android:textColor="#000000"
            android:textSize="18sp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintLeft_toLeftOf="parent"
            android:layout_marginLeft="20dp"
            app:layout_constraintTop_toBottomOf="@id/user_id"
            android:layout_marginTop="20dp"/>
    
        <EditText
            android:id="@+id/text_userid"
            android:hint="请输入学号"
            android:textColor="#000000"
            android:textSize="18sp"
            android:paddingTop="0dp"
            android:digits="0123456789"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            app:layout_constraintTop_toTopOf="@id/user_id"
            app:layout_constraintLeft_toRightOf="@+id/user_id"
            app:layout_constraintRight_toRightOf="parent"
            android:layout_marginRight="20dp"/>
    
        <EditText
            android:id="@+id/text_userpwd"
            android:hint="请输入密码"
            android:textColor="#000000"
            android:textSize="18sp"
            android:password="true"
            android:paddingTop="0dp"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            app:layout_constraintTop_toTopOf="@id/user_pwd"
            app:layout_constraintLeft_toRightOf="@+id/user_pwd"
            app:layout_constraintRight_toRightOf="parent"
            android:layout_marginRight="20dp" />
    
        <RadioGroup
            android:id="@+id/radioButton"
            android:orientation="horizontal"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"
            app:layout_constraintTop_toBottomOf="@id/user_pwd"
            android:layout_marginTop="30dp">
    
        <RadioButton
            android:id="@+id/radioButton1"
            android:text="学生"
            android:textColor="#000000"
            android:textSize="18sp"
            android:checked="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"/>
    
        <RadioButton
            android:id="@+id/radioButton2"
            android:text="教职工"
            android:textColor="#000000"
            android:textSize="18sp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginLeft="10dp"/>
        </RadioGroup>
    
        <View
            android:id="@+id/button_box"
            android:layout_height="50dp"
            android:layout_width="185dp"
            app:layout_constraintTop_toBottomOf="@id/radioButton"
            android:layout_marginTop="20dp"
            app:layout_constraintLeft_toLeftOf="parent"
            app:layout_constraintRight_toRightOf="parent"/>
    
        <Button
            android:id="@+id/button1"
            android:text="登录"
            android:textColor="#ffffff"
            android:background="@drawable/shape"
            android:textSize="18sp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintLeft_toLeftOf="@id/button_box"
            app:layout_constraintTop_toTopOf="@id/button_box" />
    
        <Button
            android:id="@+id/button2"
            android:text="注册"
            android:textColor="#ffffff"
            android:background="@drawable/shape"
            android:textSize="18sp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            app:layout_constraintLeft_toRightOf="@id/button1"
            android:layout_marginLeft="10dp"
            app:layout_constraintTop_toTopOf="@id/button_box"/>
    
    
    </android.support.constraint.ConstraintLayout>
    

    shape.xml

    <?xml version="1.0" encoding="utf-8"?>
    <shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="rectangle">
        <solid android:color="#3f51b5"/>
        <corners android:radius="10dip"/>
        <padding
            android:bottom="5dp"
            android:top="5dp"
            android:left="10dp"
            android:right="10dp"/>
    </shape>


    展开全文
  • android 漂亮的UI界面 完整的界面设计

    万次下载 热门讨论 2012-02-17 22:19:40
    声明:这也是我学习时在网上下载的,鉴于分享精神,并且觉得很不错才上传...android 漂亮的UI界面 完整的界面设计 这是一个完整的UI设计,但是没写动作,这是一个公司程序员的公司任务设计,请别商用,要用请修改。。。
  • Android Studio 简单UI界面

    千次阅读 2017-03-12 16:26:30
    Android Studio 简单UI界面利用相对布局+线性布局进行设计,且支持国际化 运行效果图如下 实现过程: 1.将准备好的八个图标复制到res/drawable文件夹下 2.创建一个垂直的线性布局,并在线性布局中创建4个相对...

    Android Studio 简单UI界面

    利用相对布局+线性布局进行设计,且支持国际化 运行效果图如下

    English
    Chinese
    实现过程:
    1.将准备好的八个图标复制到res/drawable文件夹下
    2.创建一个垂直的线性布局,并在线性布局中创建4个相对布局
    3.在相对布局中添加相应的TextView
    4.在values文件下的style.xml文件中存放抽取出来的样式
    5.创建values-zh-rCN、values-en-rUS文件夹,并在文件夹中创建strings.xml文件

    具体实现如下:

    1.创建一个名为“手机信息页面”的程序,该程序用于展示手机设置页面的信息。程序界面对应布局文件activity_mian.xml如下所示:

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="@android:color/darker_gray"
        android:orientation="vertical"
        tools:context=".MainActivity" >
        <RelativeLayout style="@style/h_wrap_content" 
            android:layout_marginTop="10dp">
            <TextView
                style="@style/tv_style"
                android:layout_alignParentLeft="true"
                android:layout_marginLeft="10dp"
                android:drawableTop="@drawable/clound"
                android:text="@string/_cloud" />
            <TextView
                style="@style/tv_style"
                android:layout_alignParentRight="true"
                android:layout_marginRight="10dp"
                android:drawableTop="@drawable/bluetooth"
                android:text="@string/_bluetooth" />
        </RelativeLayout>
        <RelativeLayout style="@style/h_wrap_content" 
            android:layout_marginTop="10dp">
            <TextView
                style="@style/tv_style"
                android:layout_alignParentLeft="true"
                android:layout_marginLeft="10dp"
                android:drawableTop="@drawable/gesture"
                android:text="@string/_gesture" />
            <TextView
                style="@style/tv_style"
                android:layout_alignParentRight="true"
                android:layout_marginRight="10dp"
                android:drawableTop="@drawable/gps"
                android:text="@string/_gps" />
        </RelativeLayout>
        <RelativeLayout style="@style/h_wrap_content" 
            android:layout_marginTop="10dp">
            <TextView
                style="@style/tv_style"
                android:layout_alignParentLeft="true"
                android:layout_marginLeft="10dp"
                android:drawableTop="@drawable/info"
                android:text="@string/_system_info" />
            <TextView
                style="@style/tv_style"
                android:layout_alignParentRight="true"
                android:layout_marginRight="10dp"
                android:drawableTop="@drawable/internet"
                android:text="@string/_internet" />
        </RelativeLayout>
        <RelativeLayout style="@style/h_wrap_content" 
            android:layout_marginTop="10dp">
            <TextView
                style="@style/tv_style"
                android:layout_alignParentLeft="true"
                android:layout_marginLeft="10dp"
                android:drawableTop="@drawable/language"
                android:text="@string/_language" />
            <TextView
                style="@style/tv_style"
                android:layout_alignParentRight="true"
                android:layout_marginRight="10dp"
                android:drawableTop="@drawable/notifycation"
                android:text="@string/_set_notifycation" />
        </RelativeLayout>
    </LinearLayout>
    1. 由于编写布局文件时,相同控件之间的外边距和宽高都是固定的。因此会产生大量重复的布局代码,为了代码简洁和重复使用可以将相同代码抽取为样式单独放在一个style.xml文件中。style.xml文件如下所示:
    <resources>
        <style name="AppBaseTheme" parent="android:Theme.Light">
        </style>
        <style name="AppTheme" parent="AppBaseTheme">
        </style>
        <!-- 宽 match——parent 高  wrap_content-->
        <style name="h_wrap_content">
            <item name="android:layout_width">match_parent</item>
            <item name="android:layout_height">wrap_content</item>
        </style>
         <!-- 宽高都 match——parent -->
        <style name="tv_style">
            <item name="android:layout_width">145dp</item>
            <item name="android:layout_height">90dp</item>
            <item name="android:gravity">center</item>
            <item name="android:paddingTop">8dp</item>
            <item name="android:paddingBottom">8dp</item>
            <item name="android:drawablePadding">5dp</item>
            <item name="android:background">@android:color/white</item>
        </style>
    </resources>    

    3.在res目录下创建values-zh-rCN、values-en-rUS文件夹,并在这两个文件夹下创建相应的strings.xml文件。
    values-zh-rCN文件夹下的strings.xml文件如下所示:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="app_name">手机信息页面</string>
        <string name="menu_settings">设置</string>
        <string name="hello_world">你好,世界!</string>
        <string name="_cloud">云通信</string>
        <string name="_bluetooth">蓝牙</string>
        <string name="_gesture">自定义手势</string>
        <string name="_gps">定位</string>
        <string name="_system_info">系统信息</string>
        <string name="_internet">网络</string>
        <string name="_language">语言设置</string>
        <string name="_set_notifycation">通知栏设置</string>
    </resources>
    values-en-rUS文件夹下的strings.xml文件如下所示:
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="app_name">phoneInfo</string>
        <string name="menu_settings">Settings</string>
        <string name="hello_world">Hello world!</string>
        <string name="_cloud">Cloud</string>
        <string name="_bluetooth">Bluetooth</string>
        <string name="_gesture">Gesture</string>
        <string name="_gps">Gps</string>
        <string name="_system_info">SystemInfo</string>
        <string name="_internet">Internet</string>
        <string name="_language">Language</string>
        <string name="_set_notifycation">Notifycation</string>
    </resources>

    4.接下来需要在MainActivity中编写与用户交互的逻辑代码,MainActivity对应的代码如下所示:

    public class MainActivity extends Activity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    }
    展开全文
  • Android Studio在进行界面设计的时候 UI 界面的 Layout 控件全在左上角 1、点击红色圈中的图标,Infer Constraints即可 2、这是之后的效果图 3、运行

    Android Studio在进行界面设计的时候 UI 界面的 Layout 控件全在左上角


    1、点击红色圈中的图标,Infer Constraints即可




    2、这是之后的效果图



    3、运行



    展开全文
  • Android Studio在进行界面设计的时候 UI 界面的 Layout 控件全在左上角   1、点击红色圈中的图标,Infer Constraints即可     2、这是之后的效果图     3、运行   ...
  • 本文以图片加上解析,希望小白可以理解通透 下面配上本次试验UI界面
  • 看起来不错的登录界面
  • Android Studio (入门级)UI 界面设计

    千次阅读 2019-09-03 20:07:12
    首先,创建一个新的空项目 将无用部分 delete 掉 将布局做一下修改 将 LinearLayout 的布局排列变成平行排列的方式 拖拽添加文本框 ...**添加纵行排列的 LinearLayout,并拖拽上按钮 ** ...风险提示可以忽略,当然,...
  • 控制UI界面的四种方法: 使用XMl布局文件控制UI界面:不灵活 在Android应用的res/layout目录下编写xml布局文件,包含对组件的属性设置。 属性的设置是以“android:属性名=”的方式设置的 在Activity中使用java代码...
  • 使用Android studio设计用户界面UI

    千次阅读 2020-11-28 17:46:47
    用户界面UI)题目一 题目一 完成界面设计,要求采用合理布局,使界面效果与下图所示结果保持一致。(密码输入框使用密码模式;“男”单选按钮默认选中,身份下拉列表框的内容为:开发者、设计者)。 XML代码: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,762
精华内容 9,104
关键字:

androidstudioui界面设计