我正在使用Android P并针对AndroidX进行编译.在debug/beta中运行良好,但是当我发布时,我在运行时遇到了一个神秘的崩溃:
2018-06-24 00:21:26.080 11971-11971 /?E/LoadedApk:无法实例appComponentFactory抛出java.lang.ClassNotFoundException:未找到路径类 "androidx.core.app.CoreComponentFactory":DexPathList [zip文件"/data/app/app.itsyour.elegantstocks-EuVZWdDgzplhm0Hpa90VwA= =/base.apk"],nativeLibraryDirectories = [/数据/应用/ app.itsyour.elegantstocks-EuVZWdDgzplhm0Hpa90VwA ==/LIB/86,/系统/ lib中]在dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:126 )java.lang.ClassLoader.loadClass(ClassLoader.java:379)at java.lang.ClassLoader.loadClass(ClassLoader.java:312)at android.app.LoadedApk.createAppFactory(LoadedApk.java:226)at android.app .LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:731)在android.app.LoadedApk.getClassLoader(LoadedApk.java:772)在android.app.LoadedApk.getResources(LoadedApk.java:994)在android.app.ContextImpl.createAppContext(在android.app.ActivityThread.access $ 1000的android.app.ActivityThread.handleBindApplication(ActivityThread.java:5736)上的ContextImpl.java:2345(Activ)ityThread.java:197)在Android.os.Looper.loop(Looper.java)的android.app.Handler.dispatchMessage(Handler.java:106)上的android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1634) :193)在android.app.ActivityThread.main(ActivityThread.java:6642)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.RuntimeInit $ MethodAndArgsCaller.run(RuntimeInit.java) :493)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)2018-06-24 00:21:26.145 1667-1854 /?E/SurfaceFlinger:ro.sf.lcd_density必须定义为构建属性2018-06-24 00:21:26.233 1667-1703 /?E/SurfaceFlinger:ro.sf.lcd_density必须定义为构建属性2018-06-24 00:21:29.627 1796-1913 /?E/TaskPersister:访问最近目录的文件错误(目录不存在?).2018-06-24 00:21:30.087 11971-11971 /?E/AndroidRuntime:FATAL EXCEPTION:main进程:app.itsyour.elegantstocks,PID:11971 java.lang.IllegalArgumentException:指定为非null的参数为null:方法cdbhb,参数$ receiver at app.itsyour.elegantstocks.aba(Unknown资料来源:2)app.itsyour.elegantstocks.feature.navigator.ba $ aa(未知来源:24)at app.itsyour.elegantstocks.feature.navigator.baa(未知来源:13)at app.itsyour.elegantstocks.feature .navigator.baa(未知来源:2)androidx.recyclerview.widget.RecyclerView $ aa(未知来源:0)androidx.recyclerview.widget.RecyclerView $ ab(未知来源:29)androidx.recyclerview.widget.RecyclerView $ pa(未知来源:39)在androidx.recyclerview.widget.RecyclerView $ pa(未知来源:510)在androidx.recyclerview.widget.RecyclerView $ pa(未知来源:5)在androidx.recyclerview.widget.RecyclerView $ pc (未知来源:1)在androidx.recyclerview.widget.LinearLayoutManager $ ca(未知来源:11)在androidx.recyclerview.widget.LinearLayoutManager.a(未知的酸)ce:0)androidx.recyclerview.widget.LinearLayoutManager.a(未知来源:44)在androidx.recyclerview.widget.RecyclerView.O的androidx.recyclerview.widget.LinearLayoutManager.c(未知来源:371)处(未知来源: 42)在androidx.recyclerview.widget.RecyclerView.q(未知来源:41)androidx.recyclerview.widget.RecyclerView.onLayout(未知来源:5)在android.view.View.layout(View.java:20670)at在android.view.View.View的android.widget.FrameLayout.onLayout(FrameLayout.java:261)的android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)的android.view.ViewGroup.layout(ViewGroup.java:6194) .layout(View.java:20670)位于android.view.Viewout上的android.view.Loutout.onLayout(未知来源:66)的android.view.ViewGroup.layout(ViewGroup.java:6194) .java:20670)在Android.widget.FrameLayout.onLayout(FrameLayout.java:261)的android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)的android.view.ViewGroup.layout(ViewGroup.java:6194)在androi 在android.view上的android.view.reshout(浏位于androidx.coordinatorlayout.wout上的android..coout.Loutout.(android.Co.:606),androidx.coordinatorlayout.widget.CoordinatorLayout.(未知来源:143).在androidx.coordinatorlayout.widget.CoordinatorLayout上的android.viewout(View.java:61670). a(未知来源:32)在Android.view.ViewGroup.layout(ViewGroup.java)的android.view.View.layout(View.java:20670)的androidx.coordinatorlayout.widget.CoordinatorLayout.onLayout(未知来源:48) :6194)在android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)的android.widget.FrameLayout.onLayout(FrameLayout.java:261)在android.view.View.layout(View.java:20670)在android .view.ViewGroup.layout(ViewGroup.java:6194)在android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)在android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)在android.widget.LinearL 在Android.widget.FrameLayout.layoutChildren(FrameLayout)的android.view.View.layout(ViewGroup.java:6194)的android.view.View.layout(View.java:20670)的ayout.onLayout(LinearLayout.java:1565) .java:323)在android.view.View.Loutout(ViewLayout.java:261)android.view.View.layout(View.java:20670)的android.view.View.layout(ViewGroup.java:6194)上的android.widget.FrameLayout.onLayout(FrameLayout.java:261)在android.widget.LinearLayout.setChildFrame(LinearLayout.java:1812)在android.widget.LinearLayout.layoutVertical(LinearLayout.java:1656)在android.widget.LinearLayout.onLayout(LinearLayout.java:1565)在android.view. View.layout(View.java:20670)在android.view.ViewGroup.layout(ViewGroup.java:6194)在android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)在android.widget.FrameLayout.onLayout(的FrameLayout .java:261)在com.android.internal.policy.DecorView.onLayout(DecorView.java:753)在android.view.View.layout(View.java:20670)2018-06-24 00:21:30.087 …
我正在尝试将应用程序从 XML 布局迁移到 jetpack compose。由于该应用程序允许设置不同的用户主题,因此我想使用 XML 主题,直到所有文件都迁移完毕。但是,我就是无法让它发挥作用。
我有一个带有定义的可组合项的简单活动:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import at.example.myapp.ui.composables.about.About
import com.google.android.material.composethemeadapter3.Mdc3Theme
class AboutActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
setTheme(MainActivity.getUserTheme(this))
super.onCreate(savedInstanceState)
setContent {
// Use MdcTheme instead of MaterialTheme
// Colors, typography, and shape have been read from the
// View-based theme used in this Activity
Mdc3Theme {
About()
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
setTheme(...) 正确加载主题,最顶部的颜色被正确设置,但没有其他。所有其他颜色、样式和字体均未在可组合项中设置。About() 可组合项本身没有什么特别的,只有一些文本、图像和一张卡片。
我正在导入以下版本:
//JETPACK COMPOSE
// Integration with activities
implementation 'androidx.activity:activity-compose:1.4.0'
// Compose Material Design …
Run Code Online (Sandbox Code Playgroud) 我如何使用MDCSnackbarFoundation?使用MDCSnackbar
这个文档不够明确,无法得到一个想法. https://github.com/material-components/material-components-web/tree/master/packages/mdc-snackbar#using-the-foundation-class
这是我的代码,我需要为它绑定MDCSnackbarFoundation.
logger = new MDCSnackbar($selector[0]);
谢谢
javascript material-design material-components mdc-components material-components-web
从https://material.io/网站(官方Google规范?),当我按照访问"Material Design UI"Web组件的路径时,我最终会在这里:
https://github.com/material-components/material-components-web/
在https://www.polymer-project.org/网站上,当我按照访问"Material Web Components"的路径时,我最终会在这里:
https://github.com/material-components/material-components-web-components
我不明白这些组件之间的区别,但我想将"官方"Google Web组件用于我正在创建的Web应用程序.
polymer material-design material-components mdc-components material-components-web
与本期附件类似,我按钮的角阴影看起来很狡猾。但是通过自定义边缘和圆角处理,按钮似乎失去了高度并且没有波纹/点击效果。知道我做错了什么吗?
材质版本为 1.1.0-alpha07
class CurvedEdgeTreatment (private val size: Float) : EdgeTreatment(), Cloneable {
public override fun clone(): EdgeTreatment {
return super<EdgeTreatment>.clone()
}
override fun getEdgePath(length: Float, center: Float, interpolation: Float, shapePath: ShapePath) {
shapePath.quadToPoint(center, -size * interpolation, length, 0f)
}
}
class ButtonActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_button)
val shapeAppearanceModel = ShapeAppearanceModel().apply {
setAllCorners(RoundedCornerTreatment(12.dpToPx(resources.displayMetrics).toFloat()))
setAllEdges(CurvedEdgeTreatment(3.dpToPx(resources.displayMetrics).toFloat()))
}
val backgroundDrawable = MaterialShapeDrawable(shapeAppearanceModel).apply {
setTint(ContextCompat.getColor(this@ButtonActivity, R.color.color_secondary))
shadowCompatibilityMode = SHADOW_COMPAT_MODE_ALWAYS
elevation = 12f
setUseTintColorForShadow(true)
paintStyle = Paint.Style.FILL …
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 .angular4 项目创建mdc-componentsangular-cli
。所以我使用 npm 命令安装了 moduled
npm install material-components-web
Run Code Online (Sandbox Code Playgroud)
这个安装了
"material-components-web": "^0.22.0"
Run Code Online (Sandbox Code Playgroud)
然后创建了一个包含滑块的 HTML 标记的组件
<div #slider class="mdc-slider" tabindex="0" role="slider" aria-valuemin="0" aria-valuemax="100" aria-valuenow="0" aria-label="Select Value">
<div class="mdc-slider__track-container">
<div class="mdc-slider__track"></div>
</div>
<div class="mdc-slider__thumb-container">
<svg class="mdc-slider__thumb" width="21" height="21">
<circle cx="10.5" cy="10.5" r="7.875"></circle>
</svg>
<div class="mdc-slider__focus-ring"></div>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
在 ts 端使用 ViewChild
@ViewChild('slider') elSlider: ElementRef;
Run Code Online (Sandbox Code Playgroud)
并使用MDCSlider
类包装此元素
let mdcSlider = new MDCSlider(this.elSlider.nativeElement);
Run Code Online (Sandbox Code Playgroud)
然后为文件中的同一个 mdc 组件导入 sassstyles.scss
文件
@import '~@material/slider/mdc-slider';
Run Code Online (Sandbox Code Playgroud)
这在 UI 上呈现了一个漂亮的材质滑块组件,并且工作正常。
监听更改事件
mdcSlider.listen('MDCSlider:change', () => console.log("Value changed …
Run Code Online (Sandbox Code Playgroud) 网页材料设计。如何设置 mdc.menu 的位置?
我会将 mdc 菜单从左上角移到右上角。距顶部 70 像素,距右侧 25 像素。
请看一下我的截图。如何更改元素样式。
请看一下我的js代码。我必须在哪里进行更改?在 css 中还是在 javascript 中?我对浏览器 chrome 进行了以下更改。
element.style {
right: 25px;
top: 70px;
}
Run Code Online (Sandbox Code Playgroud)
这是完整的 html 代码。
<!DOCTYPE html>
<html>
<head>
<title>App Bar</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="msapplication-tap-highlight" content="no">
<meta name="norobots" content="noindex, nofollow, noarchive">
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">
<!-- import Material Icons from Google Fonts -->
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
<link href="https://fonts.googleapis.com/css?family=Roboto+Mono|Roboto:400i" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Roboto:300,400,500" …
Run Code Online (Sandbox Code Playgroud) 我正在将我的 Angular 8.2.14 项目更新到 Angular 9.1.0。到目前为止,我已经成功地使用 ng update 将所有文件迁移到最新的 Angular 发行版。但是,要使此更新成功,我还必须更新此项目中使用的库。这些库之一是“用于 Angular的Material Web 组件”(@angular-mdc/web)。
这个库有一个入门指南,以便能够正确实现它。这涉及更改文件“angular.json”以设置以下内容:
"stylePreprocessorOptions": {
"includePaths": [
"node_modules/"
]
},
Run Code Online (Sandbox Code Playgroud)
本入门指南还涉及开始在我的 *.scss 文件中实现 @use 而不是 @import,以便使用的组件具有正确的样式。
然而,问题是这个@use 似乎不起作用。
例如,在入门指南中,示例声明需要将以下内容添加到 style.scss 文件中:
@use './styles/body';
@use '@material/theme' with (
$primary: #6200ee,
$secondary: #faab1a,
$background: #fff,
);
// MDC Typography
@use '@material/typography/mdc-typography';
// MDC Button
@use './styles/button';
// Angular MDC
@use '@angular-mdc/theme/material';
Run Code Online (Sandbox Code Playgroud)
然后在 style/_body.scss 中创建文件时,我应该添加:
// Override user agent body margin for mdc-top-app-bar
body { …
Run Code Online (Sandbox Code Playgroud) 为什么MDCSelect:change
在附加所有选项之前调用它时不起作用
MDCSelect:change
当我在附加列表后放置它时正在工作,但UI 看起来不太好。
问题:如何MDCSelect:change
在不损害 ui 外观的情况下工作。
当我洗牌那两行的代码时,它工作得很好
$('#select_dropdown').html(usersStr);
initializeSelect();
Run Code Online (Sandbox Code Playgroud)
select UI
当您在任何地方或简单地单击外部时,上面的代码看起来不太好
为了更好地查看,我在这里创建了 codepen:https ://codepen.io/eabangalore/pen/poNmBpm ? editors = 1010
$('#select_dropdown').html(usersStr);
initializeSelect();
Run Code Online (Sandbox Code Playgroud)
var selectBoxMap = {};
function initializeSelect(){
var mdcSelectList = document.querySelectorAll(' .mdc-select');
if(mdcSelectList){
[].forEach.call(mdcSelectList,function(el){
var select = new mdc.select.MDCSelect(el);
el.setAttribute('ripple-attached', true);
var dropDownId = $(el).find('ul.mdc-list').attr('id');
selectBoxMap[dropDownId] = select;
});
}
}
$(async function(){
var results = await $.get('https://jsonplaceholder.typicode.com/users');
var usersStr = '';
for(var i = 0; i < results.length; i++){
var …
Run Code Online (Sandbox Code Playgroud)我想在 SwiftUI 中使用 Material Design 文本字段组件。有一个为 UIKit 编写的 Material Design 文本字段组件,但没有一个为 SwiftUI 编写的。是否可以在 SwiftUI 中使用此 Material Design 文本字段组件?
mdc-components ×10
android ×3
javascript ×3
angular ×2
androidx ×1
angular-cli ×1
html ×1
jquery ×1
mdc ×1
polymer ×1
sass ×1
swiftui ×1
swiftui-form ×1