divider 相关问题

使用Skia4Delphi绘制渐变线

我的表单上有一个 TSkLabel,它是我的标题,但我想在它下面画一条彩色渐变线。 我只想要一条从一种颜色到另一种颜色的简单线条。也许很多...

回答 1 投票 0

列出 iOS 16 破坏的行分隔线

我有一个节标题列表,每个节标题有 1 行或多行。 自从更新到 iOS 16 以来,行分隔线已被推到右侧(如第一个屏幕截图所示)。 在 iOS 15.7 上运行时,该行

回答 3 投票 0

时间轴视图分隔线在 fullcalendar v6 中不可拖动

我无法通过分隔栏调整资源和事件的大小 我试图找到允许其调整大小的属性,但没有成功。 如果您是通过 fullcalendar 完成的,请告诉我。 我谢谢你...

回答 1 投票 0

为什么我的 Flexbox 属性会干扰我的 hr 标签?

所以我正在用我的代码制作一个侧边栏,并希望在某些元素之间有一个分隔符,以实现我使用 hr 标签,但当我在上下文代码中使用它时它的行为出乎意料。 当我...

回答 1 投票 0

SwiftUI Divider 未调整自身大小以适应父视图?

我有一个相当基本的 SwiftUI 视图继承关系,我试图在其中插入一个分隔符,但是分隔符将自身大小调整为一些模糊的值,并将父视图推出以满足它。每

回答 1 投票 0

如何向 recyclerview 添加分隔符、间隔符或带有文本的标题

我有一个显示数据列表的 RecylerView。我需要添加分隔符或间隔符,我还需要添加两个分隔符或间隔符,我可以添加文本,如下图所示(带有

回答 4 投票 0

如何在顺风中放置不完整的垂直分隔线

我正在尝试放置一个 x 分隔线,但线条未达到 100%,我向您展示了一个我想要的示例: 我如何需要它的图片 我正在尝试放置一个 x 分隔线,但线条未达到 100%,我向您展示我想要的示例: 我需要它的图片 <div className="grid md:grid-cols-4 rounded-[48px] md:h-48 grid-cols-1 rounded-[48px] bg-quater mx-auto w-5/6 text-white md:divide-x divide-primary divide-inset"> <div className="font-gmr text-2xl w-full h-full flex flex-col justify-center text-center p-5"> { language.secc2text1 } </div> <div className="font-raleway w-full h-full flex flex-col justify-center text-center p-5"> { language.secc2text2 } </div> <div className="font-gmr text-2xl w-full h-full flex flex-col justify-center text-center p-5"> { language.secc2text3 } </div> <div className="font-raleway w-full h-full flex flex-col justify-center text-center p-5"> { language.secc2text4 } </div> </div> 但是使用这段代码,结果就是这样,分隔线从下到上 结果图 您可以考虑向容器添加一些垂直填充: <script src="https://cdn.tailwindcss.com/3.3.3"></script> <div class="bg-green-400 mx-auto grid w-5/6 grid-cols-1 rounded-[48px] text-white md:h-48 md:grid-cols-4 md:divide-x md:py-5"> <div class="font-gmr flex h-full w-full flex-col justify-center p-5 text-center text-2xl">{ language.secc2text1 }</div> <div class="font-raleway flex h-full w-full flex-col justify-center p-5 text-center">{ language.secc2text2 }</div> <div class="font-gmr flex h-full w-full flex-col justify-center p-5 text-center text-2xl">{ language.secc2text3 }</div> <div class="font-raleway flex h-full w-full flex-col justify-center p-5 text-center">{ language.secc2text4 }</div> </div>

回答 1 投票 0

如何创建那些将文本居中的注释分隔线(它们看起来像线条)?

在 VSCode 中,有一两个扩展可以让我创建那些带注释的分隔线,并以文本为中心。基本上,我输入一些文本,点击快捷方式,它将文本包裹在那些破折号/com中......

回答 1 投票 0

需要帮助解决一个被点击但未被点击的按钮的 javascript 问题

好的,所以我有一个正在设计的 Web 界面,但我遇到了问题。它是配置遥控器以控制 ESP32 功能的界面。 ESP32上的code绝对不是pr...

回答 1 投票 0

响应式 MaterialUI 分隔线,小屏幕水平,md 和大屏幕垂直

我正在使用这个 MaterialUI 分隔线,它在 md 和大屏幕上是垂直的。但是我希望它在 xs 和 sm 屏幕上是水平的: 我正在使用这个 MaterialUI 分隔线,它在 vertical 和 md 屏幕中是 large。但是我希望它在horizontal和xs屏幕中是sm: <Divider orientation="vertical" variant="middle" flexItem /> 我也试过了: const theme = useTheme(); const isSmallScreen = useMediaQuery(theme.breakpoints.down('xs')); <Divider orientation={isSmallScreen ? 'horizontal' : 'vertical'} variant='middle' flexItem /> 还尝试用 Grid 包裹它。 但是我在 xs 和 sm 屏幕上看不到任何分隔线。 知道为什么吗?

回答 0 投票 0

我无法<hr>覆盖页面的整个宽度

我正在这个 wordpress 站点的暂存站点上工作。 https://bxo.8c8.myftpupload.com 我需要 2 在屏幕上伸展,但我尝试的一切似乎都没有改变,因为

回答 0 投票 0

分隔符在水平列表视图颤振中不可见

小部件构建(BuildContext 上下文){ 返回 ListView.builder( 滚动方向:Axis.horizontal, 收缩包裹:假的, 物理学:const BouncingScrollPhysics(), 项目Bu...

回答 4 投票 0

为什么我的 MUI 分隔线没有出现在 MUI 容器或纸张中?

早上好, 我爱上了 MUI,一个人可以做的事情太多了。然而,在广泛使用它之后,我注意到当 MUI Divider 是 Container 或 Paper 的子级时,它不会出现

回答 1 投票 0

如何在特定菜单项之间添加分隔线?

背景 我在操作栏(实际上是工具栏)中有一个菜单项,单击该菜单项会显示可供选择的项目列表,类似于单选按钮: 背景 我在操作栏(实际上是工具栏)中有一个菜单项,单击该菜单项会显示可供选择的项目列表,类似于单选按钮: <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:icon="@drawable/..." android:title="@string/..." app:showAsAction="always"> <menu> <group android:id="@+id/..." android:checkableBehavior="single"> <item .../> <item .../> <item .../> </group> </menu> </item> </menu> 我需要在这个项目列表下面放一个项目,它和列表之间会有一个分隔线。类似于材料设计指南显示的内容(取自here): 编辑:这是我想做的草图: 问题 我找不到办法去做。 我试过的 我找到的唯一可能的解决方案是: 改变活动的主题(这里),但这也会影响活动的其他菜单项 方法在菜单项出现在操作栏上时在它们之间放置分隔线,但此处它们不会出现在工具栏本身上。它们出现在所选项目的弹出菜单上。 我试过在list和extra item之间放fake items,也试过放group,空group甚至各种属性都试过 遗憾的是没有任何效果。 问题 如何在操作项的弹出菜单的特定项之间添加分隔线? 也许我需要在单击操作项时创建自定义弹出菜单(如这里)?如果是这样,我如何在特定项目之间放置分隔线? 也许使用微调器作为行动项目? 你应该使用动作布局 <menu 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" tools:context=".LandingActivity"> <item android:id="@+id/action_cart" android:title="cart" android:actionLayout="@layout/cart_update_count" android:icon="@drawable/shape_notification" app:showAsAction="always"/> </menu> 然后动作布局可以有带分隔线的文本视图。 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="match_parent" android:orientation="vertical"> <View android:id="@+id/divider" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/divider"/> <TextView android:id="@android:id/text" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?android:attr/selectableItemBackground" android:gravity="center_vertical" android:textAppearance="?attr/textAppearanceListItemSmall"/> </LinearLayout> 然后你可以在代码中添加点击监听器 从 SDK 版本 28 开始,您可以使用 menu.setGroupDividerEnabled(boolean)。如果您使用 ContextMenu 这仅在 SDK 28+ 上受支持,但是 MenuCompat 在 onCreateOptionsMenu() 中使用时提供向后兼容性。 这将在每个不同的groupId的动作之间添加一个分隔符,如下所示0和1: menu.add(0, getAdapterPosition(), action1, R.string.action1); menu.add(1, getAdapterPosition(), action2, R.string.action2); menu.setGroupDividerEnabled(true); // Or for MenuCompat < SDK 28: MenuCompat.setGroupDividerEnabled(menu, true); 文档在这里:https://developer.android.com/reference/android/view/Menu#setGroupDividerEnabled(boolean) 编辑:提问者要求的示例代码: 这是我目前在我的应用程序中使用的代码,位于 RecyclerView 适配器中。它也应该与您的菜单实现一起使用。由于您通过 XML 定义菜单,因此只要您引用菜单资源,下面的内容也适用于您。结果如下: Override onCreateContextMenu 或您菜单的相关onCreate.. 方法,如下所示: @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { menu.setHeaderTitle(getStr(R.string.actions_title)); // Groups 0 and 1, first parameter for menu.add() menu.add(0, getAdapterPosition(), 0, R.string.homescreen); menu.add(0, getAdapterPosition(), 1, R.string.lockscreen); menu.add(0, getAdapterPosition(), 2, R.string.wpLocation_both); menu.add(1, getAdapterPosition(), 3, R.string.action_download); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) { menu.setGroupDividerEnabled(true); // This adds the divider between groups 0 and 1, but only supported on Android 9.0 and up. } } 好的,我找到了一个很好的解决方法,但我不确定样式应该是这样的。这就是我所缺少的: 项目的背景位于微调器弹出窗口的背景之上,我不确定这是否是正确的放置方式。 我将支持库的白色背景用于微调器的弹出窗口。我认为应该有更好的方法让它变白。 我需要知道分隔线的正确样式是什么。现在我用了一个简单的 操作栏项目样式丢失。我只是用了一个简单的ImageView,我觉得应该不一样吧 出于某种原因,在某些 Android 版本(可能是 Lollipop 及更低版本)上,项目的背景看起来是黑色而不是白色。 微调器有时可能会遇到 setOnItemSelectedListener 问题,不确定何时。 主要活动 @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.menu_main, menu); final MenuItem item = menu.findItem(R.id.action_settings); final Spinner spinner = ((Spinner) MenuItemCompat.getActionView(item)); SimpleImageArrayAdapter adapter = new SimpleImageArrayAdapter(this); spinner.setAdapter(adapter); return true; } public class SimpleImageArrayAdapter extends ArrayAdapter<String> { private final String[] items = {"item 1", "item 2", "item 3", "extra item"}; public SimpleImageArrayAdapter(Context context) { super(context, 0); } @Override public int getCount() { return items.length; } @Override public String getItem(final int position) { return items[position]; } @Override public View getDropDownView(int position, View convertView, ViewGroup parent) { View rootView = convertView == null ? LayoutInflater.from(getContext()).inflate(R.layout.spinner_item, parent, false) : convertView; TextView tv = (TextView) rootView.findViewById(android.R.id.text1); tv.setTextColor(0xff000000); tv.setText(items[position]); boolean isLastItem = position == getCount() - 1; rootView.findViewById(R.id.action_divider).setVisibility(isLastItem ? View.VISIBLE : View.GONE); rootView.setLayoutParams(new AbsListView.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); return rootView; } @Override public View getView(int position, View convertView, ViewGroup parent) { //this is the view that's shown for the spinner when it's closed ImageView iv = new ImageView(getContext()); iv.setImageResource(android.R.drawable.ic_menu_add); int viewSize = getDimensionFromAttribute(MainActivity.this, android.support.v7.appcompat.R.attr.actionBarSize); iv.setLayoutParams(new ViewGroup.LayoutParams(viewSize, viewSize)); iv.setScaleType(ScaleType.CENTER_INSIDE); iv.setBackgroundResource(getResIdFromAttribute(MainActivity.this, R.attr.selectableItemBackground)); return iv; } } public static int getResIdFromAttribute(final Activity activity, final int attr) { if (attr == 0) return 0; final TypedValue typedValue = new TypedValue(); activity.getTheme().resolveAttribute(attr, typedValue, true); return typedValue.resourceId; } public static int getDimensionFromAttribute(final Context context, final int attr) { final TypedValue typedValue = new TypedValue(); if (context.getTheme().resolveAttribute(attr, typedValue, true)) return TypedValue.complexToDimensionPixelSize(typedValue.data, context.getResources().getDisplayMetrics()); return 0; } res/menu/menu_main.xml <menu 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" tools:context="com.example.user.myapplication.MainActivity"> <item android:id="@+id/action_settings" android:actionLayout="@layout/spinner" android:title="" app:actionLayout="@layout/spinner" app:showAsAction="always" /> </menu> res/layout/spinner_item.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="match_parent" android:orientation="vertical"> <ImageView android:id="@+id/action_divider" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/divider"/> <TextView android:id="@android:id/text1" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?android:attr/selectableItemBackground" android:gravity="center_vertical" android:minHeight="?attr/listPreferredItemHeightSmall" android:paddingEnd="?attr/listPreferredItemPaddingRight" android:paddingLeft="?attr/listPreferredItemPaddingLeft" android:paddingRight="?attr/listPreferredItemPaddingRight" android:paddingStart="?attr/listPreferredItemPaddingLeft" android:textAppearance="?attr/textAppearanceListItemSmall"/> </LinearLayout> res/layout/spinner.xml <?xml version="1.0" encoding="utf-8"?> <Spinner android:id="@+id/spinner" style="@style/SpinnerWithoutArrow" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" /> res/values/styles.xml <style name="SpinnerWithoutArrow" parent="@style/Widget.AppCompat.Spinner"> <item name="android:background">@null</item> <item name="android:popupBackground">@drawable/abc_popup_background_mtrl_mult</item> </style> res/drawable/divider.xml <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <size android:height="1dp"/> <solid android:color="#FFff0000" /> </shape> 这可以通过使用弹出窗口和列表视图来完成。在您的列表视图中,您可以有不同的视图类型,例如菜单项和分隔线。 我列出弹出窗口部分的代码: LayoutInflater inflater = LayoutInflater.from(context); View view = inflater.inflate(R.layout.option_menu, null); ListView listView = (ListView) view.findViewById(R.id.listView); listView.setDivider(null); mAdapter = new OptionListAdapter(context, options); listView.setAdapter(mAdapter); listView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { //TODO: The code when item is clicked. } }); mPopupWindow = new PopupWindow(context, null, R.attr.popupMenuStyle); mPopupWindow.setFocusable(true); // otherwise on android 4.1.x the onItemClickListener won't work. mPopupWindow.setContentView(view); mPopupWindow.setOutsideTouchable(true); int height = 0; int width = 0; float density = context.getResources().getDisplayMetrics().density; int minWidth = Math.round(196 * density); // min width 196dip, from abc_popup_menu_item_layout.xml int cellHeight = context.getResources().getDimensionPixelOffset(R.dimen.option_height); int dividerHeight = context.getResources().getDimensionPixelOffset(R.dimen.divider_height); final int widthMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED); final int heightMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED); for (int i = 0; i < mAdapter.getCount(); i++) { Object item = mAdapter.getItem(i); if (item != null) { View childView = mAdapter.getView(i, null, listView); childView.measure(widthMeasureSpec, heightMeasureSpec); height += cellHeight; width = Math.max(width, childView.getMeasuredWidth()); } else { height += dividerHeight; // divider } } width = Math.max(minWidth, width); Drawable background = mPopupWindow.getBackground(); // 9-pitch images if (background != null) { Rect padding = new Rect(); background.getPadding(padding); height += padding.top + padding.bottom; width += padding.left + padding.right; } mPopupWindow.setWidth(width); mPopupWindow.setHeight(height); mPopupWindow.setInputMethodMode(PopupWindow.INPUT_METHOD_NOT_NEEDED); 然后您可以使用以下方法显示弹出窗口: PopupWindowCompat.showAsDropDown(mPopupWindow, parent, x, y, gravity); 在列表视图的适配器中,您可以覆盖 getViewTypeCount() 和 getItemViewType() 以支持菜单项布局和分隔线布局,也可以添加您需要的任何视图类型。 这是我的应用程序中的快照: 在Material3 Design、MDC-Android中,制作各组菜单项,调用setGroupDividerEnabled(Boolean). 分隔符将插入组或菜单项之间。 MyActivity.kt private val binding by lazy { ActivityMyBinding.inflate(layoutInflater) } override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(binding.root) // other initializations.. // ... binding.toolbar.menu.setGroupDividerEnabled(true) } activity_my.xml <androidx.coordinatorlayout.widget.CoordinatorLayout 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"> <com.google.android.material.appbar.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <com.google.android.material.appbar.MaterialToolbar <!-- Other properties --> android:id="@+id/toolbar" app:menu="@menu/main" /> </com.google.android.material.appbar.AppBarLayout> </androidx.coordinatorlayout.widget.CoordinatorLayout> menu.xml <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/item0" android:title="item0" app:showAsAction="never" /> <item android:id="@+id/item1" android:title="item1" app:showAsAction="never" /> <group android:id="@+id/group0"> <item android:id="@+id/item2" android:title="group0 item2" app:showAsAction="never" /> </group> <group android:id="@+id/group1"> <item android:id="@+id/item3" android:title="group1 item3" app:showAsAction="never" /> <item android:id="@+id/item4" android:title="group1 item4" app:showAsAction="never" /> </group> </menu> 我是这样做的: 参考截图: style.xml: <style name="popup" parent="Widget.AppCompat.ListView.DropDown"> <item name="android:divider">@color/colorPrimary</item> <item name="android:dividerHeight">1dp</item> <item name="android:textColor">@color/colorPrimary</item> <item name="android:itemBackground">@android:color/white</item> </style> <!-- Base application theme. --> <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <!--- Customize popmenu --> <item name="android:dropDownListViewStyle">@style/popup</item> </style> Java代码: private void showPopup(View v) { Context wrapper = new ContextThemeWrapper(this, R.style.popup); PopupMenu mypopupmenu = new PopupMenu(wrapper, v); MenuInflater inflater = mypopupmenu.getMenuInflater(); inflater.inflate(R.menu.menu_patient_language, mypopupmenu.getMenu()); mypopupmenu.show(); mypopupmenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { txtPreferredLanguage.setText(item.getTitle().toString()); switch (item.getItemId()) { case R.id.menuEnglish: // Your code goes here break; case R.id.menuFrench: // Your code goes here break; } return false; } }); } 希望这对你有帮助。 对我有用的超级简单的解决方案: 为背景定义一个drawable: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@android:color/white"/> <stroke android:width="3dp" android:color="@color/colorPrimary"/> </shape> 然后在样式中使用背景: <style name="bluetooth_popup" parent="@android:style/Widget.DeviceDefault.Light.PopupMenu"> <item name="android:textColor">@color/colorPrimary</item> <item name="android:textStyle">bold</item> <item name="android:textAllCaps">true</item> <item name="android:background">@android:color/transparent</item> <item name="android:itemBackground">@drawable/bluetooth_popup_buttons</item> 现在: group1[ item0 item1 item2 ] group1[item3]; 改为: group1[ item0 item1] group1[item2 item3] 组有一个divider; 喜欢那组可以在divder之间加一个item; 如果divider不可用,试试background; 我从不使用menu; 这是我的猜测;

回答 8 投票 0

AppBar中的分隔符未出现

我正在努力弄清为什么我的应用程序栏中的分隔线没有出现。当我增加分隔线的高度时,我注意到我的小部件向上移动。我看过类似的问题,但都没有奏效。我的...

回答 1 投票 0

带有ItemDecoration的RecyclerView分隔线宽度

我有一个RecyclerView,并向其添加了一个ItemDecoration,如下所示:-mRecyclerView.addItemDecoration(new DividerItemDecoration(this,DividerItemDecoration.VERTICAL_LIST));我的ItemDecoration ...

回答 1 投票 2

SwiftUI ForEach垂直分隔线布局很奇怪

我是SwiftUI的初学者,在添加一些带有分隔符的VStack时遇到了ForEach布局的奇怪行为。这是示例:struct TestUserView:视图{@State var用户:[String] = [“ ...

回答 1 投票 0

自定义数据表分隔符

当v-data-table在移动视图中时,项目之间的分隔线不清楚。如何自定义此分隔线,例如线宽和颜色?我想做什么:移动视图代码上的自定义分隔符...

回答 1 投票 2

React创建一个水平分隔线,中间插入文本

我需要创建一个React组件,该组件是一个水平分隔符,其内容介于文本之间。我在线上的所有资源都无法帮助我完成此任务。我尝试了材质用户界面分隔符...

回答 1 投票 0

AsymmetricGridView更改垂直分隔线的颜色

我正在使用AsymmetricGridView库,并且正在努力更改垂直分隔线的颜色。我的XML:

回答 1 投票 2

© www.soinside.com 2019 - 2024. All rights reserved.