相关疑难解决方法(0)

从屏幕底部向上滑动布局

我有一个隐藏在视图中的布局.在按钮上单击,我希望它从底部向上滑动,向上推动整个屏幕内容,非常类似于whatsapp在聊天屏幕中显示表情符号面板的方式.

我见过SlidingDrawer,这对我不起作用.它需要一个图像作为一个手柄,显示在屏幕的中心,我不希望这样.它还会滑动现有的屏幕内容,我正在寻找一种向上移动现有内容的方法.

更新1:

我尝试使用Sanket Kachhela建议的动画.但隐藏的布局从未显示过.这是代码.

布局(activity_main.xml):

<RelativeLayout
    android:id="@+id/main_screen"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/hello_world" 
        android:layout_alignParentTop="true"/>

     <TextView
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:text="@string/hello_world" 
       android:layout_centerInParent="true"/>

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Slide up / down"
        android:layout_alignParentBottom="true" 
        android:onClick="slideUpDown"/>

</RelativeLayout>

<RelativeLayout
    android:id="@+id/hidden_panel"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" 
    android:layout_below="@id/main_screen">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/app_name" />

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

活动(MainActivity.java):

package com.example.slideuplayout;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;

public class MainActivity extends Activity {

private ViewGroup hiddenPanel;
private boolean isPanelShown;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    hiddenPanel …
Run Code Online (Sandbox Code Playgroud)

layout android uislider

86
推荐指数
5
解决办法
17万
查看次数

填充 RecyclerView 后底部工作表对话框跳起来

我遇到了一个奇怪的问题。该应用程序的流程如下:

  1. 触发底部工作表对话框。
  2. 对话片段对服务器进行 api 调用。
  3. 等待响应时显示微调器
  4. 当收到响应时,会填充 Recycler 视图和一些 TextViews。
  5. 一旦 Recycler View 更新,对话框就会从底部跳起来,不再附加到基础上。但是,如果我们滚动 Recycler View,则返回到正常位置。

实际的

当前行为

预期的

预期的

底部工作表对话框相关代码:

        //We have to override this method to ensure that the Bottom Sheet opens in expanded mode.
        @NonNull
        @Override
        public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {

            BottomSheetDialog dialog = (BottomSheetDialog) super.onCreateDialog(savedInstanceState);

            dialog.setOnShowListener(dialog1 -> {
                BottomSheetDialog d = (BottomSheetDialog) dialog1;

                FrameLayout bottomSheet = d.findViewById(com.google.android.material.R.id.design_bottom_sheet);
                BottomSheetBehavior.from(bottomSheet).setState(BottomSheetBehavior.STATE_EXPANDED);
            });

            return dialog;
        }

@Override
    public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
        super.onViewCreated(view, savedInstanceState);
        views.layoutCartItem.setLayoutManager(new LinearLayoutManager(getContext()));
        views.layoutCartItem.setItemAnimator(new …
Run Code Online (Sandbox Code Playgroud)

android android-bottomsheetdialog

6
推荐指数
1
解决办法
1487
查看次数