在我的登录表单上放置一个圆形进度条

2024-03-27

我设计了这个登录表单来模拟 movil 的 facebook 登录页面。我使用 Web 服务来执行从应用程序到 API 的请求:

登录表单设计 https://i.stack.imgur.com/coEsh.png

我想要做的是在执行请求时放置一个圆形进度条,我想禁用所有组件,并将圆形进度条放在表单上,​​一旦请求得到处理,再次启用所有组件。这是我的 xml 代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
    android:orientation="vertical"
    android:background="#dfe1ee"
    android:focusable="true"
    android:focusableInTouchMode="true"
    tools:context="com.example.abrahamarreola.facebooklogin.LoginScreen">

    <LinearLayout
        android:background="#3b5998"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <ImageView
            android:src="@drawable/facebook_logo"
            android:layout_width="match_parent"
            android:layout_height="50dp" />
    </LinearLayout>

    <LinearLayout
        android:background="#E3CE3B"
        android:paddingBottom="2dp"
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView
            android:textColor="#8f8b59"
            android:textStyle="bold"
            android:background="#fffacd"
            android:textAlignment="center"
            android:textSize="16dp"
            android:text="Log in to use your Facebook account"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    </LinearLayout>

    <LinearLayout
        android:paddingRight="20dp"
        android:paddingLeft="20dp"
        android:paddingBottom="20dp"
        android:paddingTop="30dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <LinearLayout
            android:background="@drawable/back1"
            android:orientation="horizontal"
            android:paddingBottom="10dp"
            android:paddingTop="10dp"
            android:paddingRight="12dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <ImageView
                android:layout_width="45dp"
                android:layout_height="40dp"
                android:src="@drawable/celphone_icon" />

            <TextView
                android:textStyle="bold"
                android:textSize="14dp"
                android:elegantTextHeight="true"
                android:textColor="#3b5998"
                android:layout_gravity="center_vertical"
                android:gravity="center"
                android:text="Use Facebook in your device everywhere."
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />
        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:padding="10dp"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <LinearLayout
            android:paddingTop="8dp"
            android:orientation="vertical"
            android:background="@drawable/back2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <android.support.design.widget.TextInputLayout
                android:id="@+id/email_layout"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <android.support.design.widget.TextInputEditText
                    android:id="@+id/email_input"
                    android:singleLine="true"
                    android:paddingLeft="20dp"
                    android:hint="Email:"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" />
            </android.support.design.widget.TextInputLayout>

            <android.support.design.widget.TextInputLayout
                android:id="@+id/password_layout"
                app:passwordToggleEnabled="true"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <android.support.design.widget.TextInputEditText
                    android:id="@+id/password_input"
                    android:inputType="textPassword"
                    android:singleLine="true"
                    android:paddingLeft="20dp"
                    android:paddingRight="20dp"
                    android:hint="Password:"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" />
            </android.support.design.widget.TextInputLayout>

            <LinearLayout
                android:padding="10dp"
                android:layout_width="match_parent"
                android:layout_height="wrap_content">

                <Button
                    android:id="@+id/login_button"
                    android:textSize="16dp"
                    android:textColor="#ffff"
                    android:textStyle="bold"
                    android:text="Log In"
                    android:background="@drawable/button_login"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" />
            </LinearLayout>
        </LinearLayout>
    </LinearLayout>

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

        <LinearLayout
            android:orientation="vertical"
            android:paddingTop="20dp"
            android:paddingLeft="70dp"
            android:paddingRight="70dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <Button
                android:id="@+id/new_account_button"
                android:layout_gravity="center"
                android:textSize="16dp"
                android:textColor="#ffff"
                android:textStyle="bold"
                android:text="Create new account"
                android:background="@drawable/button_create_account"
                android:layout_width="200dp"
                android:layout_height="wrap_content" />

            <TextView
                android:id="@+id/help_label"
                android:textColor="#808cba"
                android:layout_gravity="center"
                android:paddingTop="10dp"
                android:text="Forgotten Password? - Help Centre"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
        </LinearLayout>
    </LinearLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <LinearLayout
            android:background="#ffff"
            android:layout_gravity="bottom"
            android:layout_width="match_parent"
            android:layout_height="40dp">

            <TextView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="center"
                android:text="Facebook ©2019"
                android:textAlignment="center"
                android:textSize="16dp" />
        </LinearLayout>
    </LinearLayout>
</LinearLayout>

您可以利用ProgressDialog出于简单目的而不是 ProgressBar。单击您的register button use ProgressDialog像这样:

 ProgressDialog dialog = new ProgressDialog(YourActivity.this);    
 dialog.setMessage("Registering...");
 dialog.setCancelable(false);
 dialog.setCanceledOnTouchOutside(false);
 dialog.show();

要在收到成功或失败响应时关闭对话框:

dialog.dismiss();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在我的登录表单上放置一个圆形进度条 的相关文章

  • 如何以编程方式启用小米应用程序的自动启动

    我想知道小米是否可以提供任何应用程序的后台服务 我的应用程序中有需要始终在后台运行的服务 在除小米之外的所有设备中都工作正常 如何以编程方式完成 也适用于小米 oppo vivo 和 oneplus 手机 try Intent intent
  • 如何模糊视图

    I have a view having different colors I need to blur the background of that view for example There is LinearLayout in wh
  • 如何在应用程序中创建会话对象

    在我的应用程序中 我想创建一个用于登录和注销的会话 我不知道如何使用会话 任何人都可以通过提供一些示例来帮助我 我认为会话对象应该是在应用程序开始运行时声明和初始化的静态对象 我遇到了这个问题 并决定将我的会话对象放入 utils 类中 该
  • 如何组合 3 个或更多 CompletionStages?

    如果有 2 个 CompletionStages 我可以将它们与thenCombine method CompletionStage a aCompletionStage getA CompletionStage b bCompletion
  • SwingUtilities.invokeLater

    我的问题与SwingUtilities invokeLater 我应该什么时候使用它 每次需要更新 GUI 组件时都必须使用吗 它到底有什么作用 是否有替代方案 因为它听起来不直观并且添加了看似不必要的代码 Do I have to use
  • 覆盖Java中的属性[重复]

    这个问题在这里已经有答案了 在 Java 中 我最近有几个项目 我使用了这样的设计模式 public abstract class A public abstract int getProperty public class B exten
  • 从 Java 应用程序读取的文件是否会调用系统调用?

    我的理解是 请求文件系统路径 例如 aFile 的用户应用程序将调用文件系统并获取所请求文件的虚拟地址 然后应用程序将尝试以该地址作为参数 即作为 CPU 指令 进行读 写操作 执行读取命令时 内存管理单元会将该地址转换为物理地址 并查看页
  • 图标和导航视图之间的左边距

    我必须在图标和图标之间添加左边距NavigationView 如下图中箭头所示 我知道根据谷歌规范 这个边距必须有16dp但我需要改变它 我努力了
  • 莫基托。验证方法参数是特定类

    我有一个方法 void putObject
  • 运行 Espresso 测试时在 Android studio 中找不到属性 android:forceQueryable

    我已经使用 android studio 录制了我的 Android 应用程序 Espresso 测试记录浓缩咖啡测试选项中Run菜单 在记录的最后 我用自己的文件名保存了测试 单击保存按钮后 IDE 会自动在以下位置创建文件Android
  • 允许 .NET WebApi 忽略 DOCTYPE 声明

    我正在尝试通过 WebApi 方法将 XML 反序列化为对象 我有以下课程 XmlRoot IsNullable false public class MyObject XmlElement Name public string Name
  • 如何获取在代码中 attrs.xml 中创建的枚举

    我创建了一个自定义视图 找到它here https bitbucket org informatic0re awesome font iconview 具有枚举类型的可声明样式属性 在 xml 中 我现在可以为我的自定义属性选择枚举条目之一
  • 为什么 OOP 中静态类的最佳实践有所不同?

    我目前正在阅读有关 Java 最佳实践的内容 我发现根据这本书 https rads stackoverflow com amzn click com 0321356683我们必须优先选择静态类而不是非静态类 我记得在 C 最佳实践中 我们
  • 新的 Android 项目未创建布局或 Java 文件

    这两天我一直在尝试简单地阅读 Big Nerd Ranch Android 编程书 第一章的前几页 我的问题的要点是 当我创建新的 Android 应用程序时 不会创建布局或 java 文件 我已经从 Android 开发站点安装了 ADT
  • 如果 @transactional 在类级别应用,如何拦截 @transactional 参数

    我想捕获 transactional 的参数 如果它应用于类级别 例如如果 transactional应用在方法级别 例如 class A transactional readOnly true public void someMethod
  • Bipush 在 JVM 中如何工作?

    我知道 iload 接受整数 1 到 5 但是如何使用 bipush 指令扩展到更高的数字 特定整数如何与字节码一起存储 有几种不同的指令可用于推送整数常量 最小的是iconst 指令 这些只是一个字节 因为该值是在操作码本身中编码的 ic
  • Swing GUI 出现 IntelliJ 错误“contentPane 无法设置为 null。”从终端编译时

    当我从 IntelliJ 编译我的项目时 没有任何问题 我的程序运行顺利 但是当我尝试使用 javac 从终端编译它时 警告 注意 Victor presentation TableControllerMenu java 使用未经检查或不安
  • 在 Spark MLlib 上使用 Java 中的 Breeze

    在尝试从Java使用MLlib时 使用微风矩阵运算的正确方法是什么 例如scala 中的乘法很简单 matrix vector 相应的功能在Java中是如何表达的 有一些方法 例如 colon times 可以通过正确的方式调用 breez
  • Selenium Webdriver - 单击多个下拉菜单时出现陈旧元素异常,而 HTML DOM 不会更改

    我尝试自动化一个场景 其中条件是我必须从下拉列表中选择一个选项 然后它旁边有另一个下拉列表 我必须单击下一个下拉列表中的一个选项才能启用按钮 我尝试使用代码 但它仅单击第一个选项 并显示错误为过时的元素引用 元素未附加到页面文档 请帮忙 如
  • 为什么我们不能在函数式接口中重载抽象方法? (爪哇)

    所以我熟悉java中的函数式接口 以及它们与lambda表达式的使用 一个函数式接口只能包含一个抽象方法 当从 lambda 表达式使用这一孤独方法时 您不需要指定其名称 因为接口中只有一个抽象方法 编译器知道这就是您正在引用的方法 Exa

随机推荐

  • 使用 plone.memoize.ram 使 memoize 无效/阻止

    我和 Zope 实用程序提供了一种执行网络进程的方法 由于结果在一段时间内有效 我正在使用plone memoize ram缓存结果 MyClass object cache cache key def do auth self adapt
  • GitHub,推送错误:远端意外挂断

    我现在无法将本地提交推送到 github 存储库 我收到一条错误消息 Counting objects 76 done Delta compression using up to 8 threads Compressing objects
  • 如何使用jquery发送int类型参数

    我正在构建一个 Web 服务 它将使用 jquery 与网页进行通信 我想构建我的 Web 服务 使其类型安全 而不需要在服务器端执行转换 如何使用 jquery 从客户端发出 ajax 调用到需要 int 值参数的服务器 编辑 我明白这是
  • 如何在 iOS 上使用 AVMutableComposition 和 CALayers 将多个 CALayer 添加到视频文件

    我想添加多个CALayer按时间顺序一个接一个 我可以使用此链接向视频文件添加一层Here https stackoverflow com q 5997677 1450762 现在我的问题是如何添加多个CALayer到视频文件 提前致谢 最
  • 如何在程序中包含数据对象文件(图像等)并访问符号?

    我使用以下命令将几个资源文件转换为 obj 文件objcopy我将它们与我的程序源代码链接起来 我可以使用以下代码很好地访问程序中目标文件内的符号 但只能使用 GCC G Cygwin extern uint8 t data asm bin
  • 为什么 Supervisor.start_child 不起作用

    我是 Elixir 的初学者 我有一个应用程序在 application ex 中启动一个自定义主管 代码 defmodule MyApp do use Application def start type args do import S
  • 如何使用 Python 提取在 HTML 页面 javascript 块中定义的 JSON 对象?

    我正在下载其中定义了数据的 HTML 页面 方法如下 我想提取 window blog data 中定义的 JSON 对象 有没有比手动解析更简单的方法 我正在研究 Beautiful Soap 但似乎找不到一种无需解析即可返回确切对象的方
  • 如何在phonegap应用程序中添加滚动条

    我正在 PhoneGap 中为 Android 平台开发一个应用程序 在此应用程序中 不显示滚动条 如何在我的应用程序中显示滚动条 这是我的示例活动 它将显示滚动条 public class MyActivity extends Droid
  • 如何在 Laravel 中为 20 分钟后的每条新记录制定调度程序任务?

    我有一个停车系统 我使用 Angular 6 Laravel 作为后端 但我有一个具体问题 我不知道正确的方法 公园有两个图腾 它们向我的服务器发送一个条目 只有当客户从出口走出图腾并进入付款区时 我才会检查客户是否无效 这是我的代码 当他
  • python中日志文件名存储在哪里?

    我有一个由多个模块组成的 Python 程序 main 模块创建一个文件变量log file用于记录输出 所有其他模块也需要写入该文件 但是 我不想将 主 模块导入到其他模块中 因为这将是一个非常奇怪的依赖项 更不用说由于循环依赖它甚至可能
  • 在父级构造函数中设置窗口所有者时遇到问题

    在 WPF 中 在父窗口的构造函数中将窗口的 Owner 属性设置为其父窗口是否有任何问题 不应该有吧 那么为什么我会得到一个XamlParseException从下面的代码 public partial class MainView Wi
  • 如何使用 sqlalchemy 将初始数据加载到数据库中

    我希望能够在使用 SQLAlchemy 创建表时自动加载数据 在 django 中 你有fixtures https docs djangoproject com en dev howto initial data 它允许您在创建表时轻松地
  • 将 PDF 转换为 HTML,保持布局

    有哪些方法可以将 PDF 转换为 HTML 它可以是任何东西 在线服务 软件 图书馆 首选开源 在后一种情况下 首选 php 或 python 它必须保留原始布局 包括页码 脚注等 保留图像 可以将它们组合为每页一个背景图像 并保留链接 它
  • 使用 Javascript 管理 LinkBut​​ton?

    我有一个LinkButton在视图上称为 退出聊天 我嵌入javascript编码成OnClientClink javascript confirm Are you sure you want to end the session 但是 我
  • 使用引导推拉更改列顺序

    我有 3 列 按以下顺序排列 div class container fluid h1 Hello World h1 p Resize the browser window to see the effect p div class row
  • XCODE 不断崩溃。处理自动布局

    我点击关闭自动布局 现在我单击复选框将其打开 xcode 立即崩溃 每次 我很确定所有表格视图都有一个数据源 我无法从事该项目 请帮忙 Process Xcode 5748 Path Applications Xcode app Conte
  • 如何重命名 zip 存档中的文件而不解压并重新压缩它们?

    我需要将 zip 文件中的所有文件重命名为AAAAA filename txt to BBBBB filename txt 我想知道是否可以自动执行此任务 而无需提取所有文件 重命名 然后再次压缩 一次解压缩一个 重命名并再次压缩是可以接受
  • 变量在赋值之前已被使用

    我在任何地方都找不到我的具体问题的答案 所以我想我应该提出一个新问题 我有一个程序可以在 ASCII 和二进制之间转换文本 它通过在第一个数组中查找输入 获取该输入的索引并查看第二个数组中的索引号 然后将找到的内容写入另一个变量来实现此目的
  • 如何修复“使用 libclang.dylib 插件时 Xcode 意外退出”?

    每次启动 xCode 后不久我都会遇到这个 5 1 1 删除了用户数据 关闭了源代码控制 正如一些帖子所建议的那样 没有效果 仍然崩溃 同时显示索引 永远不会完成 甚至重装了xCode 没有任何效果 还是这么说 有人修复过这样的 xCode
  • 在我的登录表单上放置一个圆形进度条

    我设计了这个登录表单来模拟 movil 的 facebook 登录页面 我使用 Web 服务来执行从应用程序到 API 的请求 登录表单设计 https i stack imgur com coEsh png 我想要做的是在执行请求时放置一