Android NoteX
文章平均质量分 52
ganshenml
学习中……
展开
-
Android DialogFragment 如何显示和隐藏
一、 前述DialogFragment从名字上来就可以理解:它是fragment,具有dialog的特性。二、 方案关于显示可以使用FragmentTransaction,因为它本身是Fragment。关于dismiss:@Overridepublic void onDismiss(@NonNull DialogInterface dialog) { if (!mViewDestroyed) { // Note: we need to use allowStateLoss原创 2021-09-28 22:51:27 · 2513 阅读 · 0 评论 -
Android 如何简单实现一个跳转页面前判断登录的功能?
(它要求做到点击某个按钮触发跳转到某个activity前进行登录判断,等待登录成功后自动跳转到目标activity)这里以BaseApplication来做数据中转,代码块对象作为跳转执行代码的数据存储:class BaseApplication : Application() { companion object { @JvmStatic var isLogin: Boolean = false @JvmStatic var lo原创 2021-09-27 23:11:16 · 897 阅读 · 0 评论 -
Android Fragment 在Dialog中的使用
先看这样一个报错:Caused by: android.view.InflateException: Binary XML file line #13 in com.example.kotlindemo:layout/layout_dialog_simple: Error inflating class fragmentCaused by: java.lang.IllegalArgumentException: Binary XML file line #13: Duplicate id 0x7f08原创 2021-09-13 22:13:06 · 1888 阅读 · 0 评论 -
Android dialog监听生命周期
ViewModel: var lifeCycleEventLiveData = MutableLiveData<Lifecycle.Event>() @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY) fun onActivityDestroy() { lifeCycleEventLiveData.value = Lifecycle.Event.ON_DESTROY }}(上述仅写出了onDe原创 2021-09-09 21:12:15 · 1130 阅读 · 0 评论 -
Android CardView如何显示出底背景样式?
<androidx.cardview.widget.CardView android:id="@+id/actionOneCv" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:foreground="?android:attr/selectableItemBackground" app:cardCorner原创 2021-07-08 22:42:16 · 703 阅读 · 3 评论 -
Android NoteX Q12:如何判定textview超出了一行?
fun setContent(content: String?) { data.content = content contentTv?.apply { //比较是否超出了一行 post { paint.textSize = textSize val exceedOneLine = paint.measureText(content) > width setLines(if (exceedOneLi原创 2021-07-06 22:53:29 · 423 阅读 · 2 评论 -
Android NoteX Q11:trycatch(Exception e)能捕获所有异常么
当然不能,譬如:加载一个不存在的库。System.loadLibrary("c++_shared");还是会报错。java.lang.UnsatisfiedLinkError: dlopen failed: library “libc++_shared.so” not foundat java.lang.Runtime.loadLibrary0(Runtime.java:1087)at java.lang.Runtime.loadLibrary0(Runtime.java:1008)at j原创 2021-06-29 21:37:39 · 277 阅读 · 0 评论 -
Android NoteX Q10:色值上的各个位代表什么?
一 前言自定义阴影时需要加上透明度才能更好实现平滑的效果,所以需要了解相关方面的知识。当然也不仅限于阴影实现效果,还有其他的UI设计也涉及到透明度了。二 色值代表ARGB这是对应的色值符号,A代表alpha透明度。 <!--100% —FF--> <!--95% — F2--> <!--90% — E6--> <!--85% — D9--> <!--80% — CC--> &原创 2021-06-15 23:26:24 · 208 阅读 · 3 评论 -
Android NoteX Q9: PopupWindow setOutsideTouchable 失效?
设置为true后点击外部还是会被dismiss掉,这是为什么?/** * <p>Controls whether the pop-up will be informed of touch events outside * of its window. This only makes sense for pop-ups that are touchable * but not focusable, which means touches outside of the window wil原创 2021-05-31 21:33:53 · 1182 阅读 · 5 评论 -
Android 如何监听popupwindow的焦点变化
一 假设override fun setContentView(contentView: View?) {super.setContentView(contentView)contentView?.viewTreeObserver?.addOnGlobalFocusChangeListener { oldFocus, newFocus -> doWork()}}通过viewTreeObserver里进行全局焦点变化监听,但是会发现,pop dismiss一次后,以后弹出来原创 2021-05-25 23:07:38 · 739 阅读 · 3 评论 -
Android NoteX Q8:Glide竟然发生了Cannot draw recycled bitmaps?
一 场景还原在多个页面(Activity)中加载了同一gif资源,退出部分Activity后报出了如题错误。Glide.with(this) .asGif() .placeholder(contentIv!!.drawable)//解决切换图片闪烁问题 .load(resId) .listener(object : RequestListener<GifDrawable> { override fun onLoadFailed(原创 2021-04-30 23:32:50 · 200 阅读 · 1 评论 -
Android NoteX Q7: Android Studio 如何设置快捷键?
一 设置步骤File->Settings->Keymap二案例Windows下回到上一次浏览的位置的快捷键为:Ctrl+Alt+⬅(向左箭头),但是这个和设置Windows屏幕方向的快捷键冲突了,所以导致AS中的操作无效。更改的方式如下:双击黄色标记处即可调处menu,可以:Add Keyboard Shortcut :添加快捷键Remove:删除已有的快捷键因此,这里可以Remove掉和系统操作冲突的快捷键。然后Add自己习惯的快捷键。调出窗口后,直接操作组合快捷原创 2021-04-20 22:22:16 · 126 阅读 · 0 评论 -
Android NoteX Q6: 如何实现一行文本居中多行文本左对齐效果?
一 背景UI设计可能会有如题的需求。写几个View效果来叠加就显得繁琐了,那怎么办呢?二 思路判断行数来设置gravity呗?先来探索下获取TextView行数的结果:fun setTwoLine(view: View) {Log.d(TAG,"setTwoLine")binding.textView.text = "这是很多内容这是很多内容这是很多内容这是很多内容" printTextViewLine()}fun setTwoLineByN(view: View) {bind原创 2021-04-15 23:20:23 · 251 阅读 · 0 评论 -
Android NoteX Q5:同一个drawable的线横向和竖向为什么看起来不一样?
问题现象可以很明显看到横线和竖线的差异,高度指定为1px,竖线的宽度也是1px,对应的drawable都为同一个:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="#EEEEEE" />原创 2021-04-14 22:37:01 · 170 阅读 · 0 评论 -
Android NoteX Q4:AppCompatDialog去除标题栏失败?
一 目的会出现想要自定义dialog并去除默认自带的title部分的情况,有时候就会发现无论是定义theme:<style name="MDialog" parent="ThemeOverlay.AppCompat.Dialog.Alert"> <item name="android:windowNoTitle">true</item></style>还是添加代码:requestWindowFeature(Window.FEATUR原创 2021-04-11 11:03:30 · 286 阅读 · 0 评论 -
Android NoteX Q3:如何通过图片获取指定大小的bitmap?
一般通过图片获取其Bitmap的方法如下:Bitmap bitmap = BitmapFactory.decodeResource(getResources(),R.drawable.head);int width = bitmap.getWidth();int height = bitmap.getHeight();System.out.println("Bitmap weight = "+width+" Bitmap height "+height);Bitmap bitmap1 = Bi.原创 2021-04-08 22:46:53 · 319 阅读 · 0 评论 -
Android NoteX Q2: 如何在通知栏下拉时暂停视频?
问题背景有些视频类APP在进行素材播放时,若是下拉通知栏则会让播放暂停,取消通知栏则会继续播放。一般情况下,通过生命周期回调方法onPause、onStop之类的可以监听到页面变化,进而来暂停、播放视频即可。但,对于通知栏下拉这种情况,以上方法无法收到回调监听。解决方法 /** * Called when the current {@link Window} of the activity gains or loses * focus. This is the best i原创 2021-03-29 23:01:48 · 378 阅读 · 0 评论 -
Android NoteX Q1:webview会让承载的Activity闪退么
答:会譬如有以下这样的报错:E/chromium: [ERROR:aw_browser_terminator.cc(123)] Renderer process (32718) crash detected (code -1)E/chromium: [ERROR:aw_browser_terminator.cc(89)] Render process (32718) kill (OOM or update) wasn't handed by all associated webviews, killi原创 2021-03-25 21:48:24 · 4231 阅读 · 3 评论