Java 在Android中,您将如何开发此功能?(活动及意见问题)

Java 在Android中,您将如何开发此功能?(活动及意见问题),java,android,listview,mobile,webview,Java,Android,Listview,Mobile,Webview,当用户打开应用程序时,屏幕上有一个按钮,上面写着“登录” 用户点击按钮,弹出一个网络视图,允许他登录网站 登录后(应用程序需要知道),webview将消失,然后会弹出一个用户名列表。(列表视图?) 当用户单击其中一个用户名时,将弹出该用户名配置文件的网络视图。当然,当用户按下“back”时,它会返回到用户名列表 有人能从活动和观点方面给我解释一下吗?我是否使用两种活动来完成此操作?当用户在webview或listview之间单击时,我是否隐藏它们 我做了教程(记事本教程),但我仍然不知道开发这个

当用户打开应用程序时,屏幕上有一个按钮,上面写着“登录”

用户点击按钮,弹出一个网络视图,允许他登录网站

登录后(应用程序需要知道),webview将消失,然后会弹出一个用户名列表。(列表视图?)

当用户单击其中一个用户名时,将弹出该用户名配置文件的网络视图。当然,当用户按下“back”时,它会返回到用户名列表

有人能从活动和观点方面给我解释一下吗?我是否使用两种活动来完成此操作?当用户在webview或listview之间单击时,我是否隐藏它们

我做了教程(记事本教程),但我仍然不知道开发这个的最佳方法是什么


谢谢

基本上,这一切都可以在一次活动中完成。我可以试着简单地演示如何做到这一点

  • 运行应用程序时,将调用
    活动
    (AndroidManifest.xml)
  • 视图
    (可以调用main.xml)显示一个登录按钮
  • 单击按钮后,您将启动
    WebView
  • 成功登录后,将
    视图
    切换到自定义视图,在
    列表视图
    上显示用户名(可能是您创建的名为userlist.XML的预定义XML文件)
  • 对特定用户名使用
    onClick
    将启动有关该特定用户名的
    WebView
  • 要在用户点击后退按钮时返回应用程序,您可能需要利用
    onPause
    onResume
    ,但我不确定

    这可能不是最好的方法,甚至不是一个好方法,但它可能有助于消除任何困惑

    编辑:
    活动是绑定到AndroidManifest.xml作为应用程序的主要入口点的活动。<代码>视图<代码>在<代码>活动< /代码>中包含用户交互组件,如登录按钮、显示用户名、查看Web内容(<代码> WebVIEW <代码> >等)

    首先,我将考虑一种不同的方式来解决这个问题。

    您可以在Andoid中创建自己的登录布局,并将登录数据发送到网站。完成此操作后,应创建所有用户名的列表视图。如果用户选择其中一个用户名,则应打开WebView

    问题是,您必须检查登录是否成功!基本上你需要做一个HttpRequest,解析输出并检查它

    如果你想登录的是你的网站,你可以为你的登录写一个小包装,它会为你的登录返回true/false。(返回xml或纯文本的php包装器)

    无论如何,如果您确实想通过WebView登录,可以通过以下方式进行检查:

    private void initWebView(final WebView mWebView) {
        mWebView.setWebViewClient(new WebViewClient() {
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                Page = new WebView(YourClass.this);
                Page.getSettings().setJavaScriptEnabled(true);
                Page.loadUrl(url);
    
                if(url.contains("OkDoLogIn.php")) {
                    /* Check if login was successful if true start new Activity */
                }
                return true;
            }
        });
    }
    
    使用url.contains(“OkDoLogIn.php”),基本上可以检查要打开的url。在您的情况下,它将是您的登录按钮的url或url的一部分

    不过,您必须检查您的登录是否成功

    编辑:见第一条评论

    当用户打开应用程序时,会出现一个屏幕,屏幕上有一个按钮,上面写着“登录”。用户单击按钮,弹出一个网络视图,允许他登录到该网站。登录后(应用程序需要以某种方式知道)

    您可以使用两个独立的
    活动
    类来完成此操作。我会把
    WebView
    放在它自己的
    活动中。这比自己管理大量不同的
    视图
    对象更容易。此外,如果您将每个部分放在自己的
    活动中,您将获得不同事物之间的转换

    您可以使用启动登录
    活动
    ,允许它在登录成功与否时返回

    如果要检测登录,可以使用
    WebViewClient
    WebView
    中监视事件。您可以使用设置
    WebView
    WebViewClient

    网络视图将消失

    只需使用
    意图启动下一个
    活动
    ,然后调用第一个
    活动
    。如果您这样做了,那么如果他们单击“上一步”,那么使用将不会返回到登录按钮活动,因为它将不再位于堆栈上

    我不清楚的是,该网站的登录有效期有多长。您可能需要,以确保用户离开后必须再次登录,然后返回到您的应用程序

    然后会弹出一个用户名列表。(列表视图?)

    使用一个。这是一个
    活动
    ,它与API一起提供,用于显示单个
    列表视图

    当用户单击其中一个用户名时,将弹出该用户名配置文件的网络视图。当然,当用户按下“back”时,它会返回到用户名列表


    因此,使用检测触摸并启动一个新的
    活动
    ,其中包含
    网络视图
    ,以显示配置文件。由于这是在一个新的
    活动中
    后台处理是全自动的。

    也许我们可以帮助澄清混淆,是关于什么是
    视图
    活动
    ?或者什么时候使用它们?最好你能同时回答这两个问题:)我知道大概的意思,但我很困惑。在一个活动中可以有多个视图吗?他们是活动的一部分吗?(此类问题)您可以在
    活动
    中拥有多个视图,它们是
    活动
    的一部分。创建应用程序时,您将扩展到
    活动
    类,该类将您的应用程序放入
    活动
    堆栈,并且在应用程序的生命周期内,
    活动
    可以切换
    视图
    的启动
    意图
    (实际上是一个子
    活动
    )a和a之间到底有什么区别