小编Abd*_*del的帖子

bottomSheetDialogFragment 全屏

我想要实现的是类似于 Instagram 应用程序内网络浏览器,当您点击广告时使用:

Instagram 网络浏览器

我所做的,是我使用了一个 WebView bottomSheetDialogFragment,然后我重写onCreateDialog以获得这样的全屏:

@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    BottomSheetDialog bottomSheetDialog=(BottomSheetDialog)super.onCreateDialog(savedInstanceState);
    bottomSheetDialog.setOnShowListener(dialog -> {
        BottomSheetDialog dialogc = (BottomSheetDialog) dialog;
        FrameLayout bottomSheet =  dialogc .findViewById(android.support.design.R.id.design_bottom_sheet);
        BottomSheetBehavior.from(bottomSheet).setState(BottomSheetBehavior.STATE_EXPANDED);
        //BottomSheetBehavior.from(bottomSheet).setSkipCollapsed(true);
        //BottomSheetBehavior.from(bottomSheet).setHideable(true);
    });
    return bottomSheetDialog;
}
Run Code Online (Sandbox Code Playgroud)

这是我得到的结果:

网页浏览器

我的问题是,如何获得全屏效果,或者如何实现类似 instagram 浏览器的功能?

ps:我首先尝试了 chrome 自定义选项卡,但无法将其添加到对话框片段中。

谢谢你。

android material-design bottom-sheet material-components material-components-android

42
推荐指数
9
解决办法
4万
查看次数

Retrofit 2:用json对象发送文件

我在请求正文中发送对象,类似于:

{
  "title":"test",
  "description":"test",
  "images":[]
}

@POST("create-data")
Call<JsonObject> publishData(@Body MyObject object);
Run Code Online (Sandbox Code Playgroud)

没有图像,它的工作正常.从文档中我可以找到如何使用文件上传文件MultipartBody.Part,我的问题是:

  1. 如何同时上传多张图片?
  2. 是否可以将图像发送到对象内部,或者我需要单独发送它以及如何发送?

非常感谢你.

android json web-services retrofit retrofit2

9
推荐指数
2
解决办法
8410
查看次数

Android:启动Login活动时关闭所有活动

我有两个活动Login和Main,当用户启动应用程序时,Main活动开始并验证用户是否登录,如果没有,则app会将用户重定向到登录活动.

一切正常,但问题是当后退按钮点击登录活动时,应用程序启动活动主要,我希望应用程序退出..
请帮助.

android android-activity

3
推荐指数
1
解决办法
1056
查看次数

如何在许多Web浏览器中使用不同的事件

我正在开发一个应用程序,我想创建多个线程,每个线程必须创建一个WebBrowser,每个都WebBrowser使用该方法webBrowser_DocumentCompleted.

每个创建的WebBrowser实例如何拥有它自己的DocumentCompleted处理程序而不是webBrowser_DocumentCompleted所有实例的相同方法.

我解释 :

在一种情况下,使用单个Web浏览器进行操作

int a = 0;
private void button1_Click(object sender, EventArgs e)
        {
            methode1();
        }
private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            if (a == 1) methode2(wb);
            if (a == 2) methode2(wb);
        }

public void methode1()
        {
            webBrowser.Navigate("http://www.test.com");
            a = 1;
        }
public void methode2()
        {
            HtmlElement txt1 = webBrowser1.Document.GetElementById("tesxtbox1");
            txt1.SetAttribute("value", "test");
            webBrowser.Document.Forms[0].InvokeMember("submit");
            a = 2;
        }
public void methode3()
        {
            webBrowser.Navigate("http://www.test3.com");
        }
Run Code Online (Sandbox Code Playgroud)

但如果我想进行多项操作,即在butoon1中我添加:

private …
Run Code Online (Sandbox Code Playgroud)

.net c# browser multithreading winforms

0
推荐指数
1
解决办法
133
查看次数