Tag: 安卓

使用Rx-Java时,Android视图在旋转后为空

我正在使用Kotlin Android Extensions访问片段中的所有视图,该视图按预期工作,即使在屏幕旋转后也可以正常访问。 当我尝试访问Rx-Java可观察间隔内的视图时,问题就开始了: var interval = Observable.interval(10, TimeUnit.SECONDS, Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) interval.retry().subscribe { updateUi(); } 如果我间隔旋转屏幕。 updateUi()方法下次作为observable的一部分运行时,其内部的视图将为空,并且应用程序将崩溃,并出现以下exception: io.reactivex.exceptions.OnErrorNotImplementedException:text_view不能为null 但是,如果我尝试运行可观察性以外的方法,一切都将正常工作。 我知道,使用findViewById()访问视图将正确地检索视图,但是这会破坏具有kotlin-android-extensions的purpuose。

来自firebase的recyclerview onClick getkey

如何在RecyclerView获取kotlin中的密钥以将其发送到其他活动? 我尝试使用getKey()和position但它不起作用。 这是我的代码: class RecyclerAdapter (val userlist:ArrayList,ccc: Context): RecyclerView.Adapter() { var mcontext =ccc val Postdata = java.util.ArrayList() lateinit var ref:DatabaseReference override fun getItemCount(): Int { return userlist.size } override fun onBindViewHolder( holder: ViewHolder?, position: Int) { val user: RecyClass = userlist[position] ref = FirebaseDatabase.getInstance().getReference(user.toString()) holder?.txtviewdesc?.text = user.desc Picasso.with(mcontext).load(user.image).into(holder?.imageviewx) holder?.setOncustomcilcklistner(object :Custumclicklistner33{ override fun oncustomOnClickListner(view: View, pos: […]

如何在values / ids.xml中获得自定义ID的引用

我在回收视图适配器中使用anko来创建视图的视图。 我已经做到了这一点,但不知道如何使用kotlin综合视图id(我想得到它没有findViewById) 值/ ids.xml 我的Anko getView代码: private fun getView(context: Context): View{ return with(context){ linearLayout { lparams(width = matchParent, height = wrapContent) padding = dip(10) orientation = android.widget.LinearLayout.HORIZONTAL //Task Number textView { id = R.id.txv1 text = “TextView 22” textSize = 16f typeface = Typeface.MONOSPACE padding =dip(5) }.lparams(){ weight = 1f } //Task Name textView { […]

如何解决KaptError:Android Studio 3.0中的注释处理时出错?

嗨,大家好,我有一些问题在kotlin中通过dagger2-android实现dependency injection,解决所有这些问题后,我遇到了构建应用程序的这个错误。 我正在使用Android Studio 3.0,并且在使用匕首之前项目运行良好,您觉得我可以解决这个问题吗? 或者我怎么能得到关于错误的更多信息? 因为只有“错误:screenSize”对我来说并不意味着很多。 以防万一这是AndroidManifest 这是我得到的错误 我做了一些改变,现在看起来很清楚,真正的错误是“错误:注释处理时出现org.jetbrains.kotlin.kapt3.diagnostic.KaptError:Error” 这里是我的build.gradle的样子 apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-kapt’ apply plugin: ‘kotlin-android-extensions’ android { compileSdkVersion 27 defaultConfig { applicationId “com.sneyder.rememberconcepts” minSdkVersion 14 targetSdkVersion 27 versionCode 1 versionName “1.0” testInstrumentationRunner “android.support.test.runner.AndroidJUnitRunner” vectorDrawables.useSupportLibrary = true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } […]

如何从Firebase中的表中同步获取所有行?

考虑下面的代码片段: public ArrayList getList(GenericModel model) { ValueEventListener postListener = new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { ArrayList genericModels = new ArrayList(); for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) { GenericModel genericModel = postSnapshot.getValue(model.getClass()); genericModels.add(genericModel); } Collections.sort(genericModels, (o1, o2) -> o1.getDate().compareTo(o2.getDate())); return genericModels; } @Override public void onCancelled(DatabaseError databaseError) { return null; } }; mDatabase.child(model.getTableName()).child(mUser.getUid()).addListenerForSingleValueEvent(postListener); } […]

Android体系结构组件:ViewModel在配置更改时返回null

我正在使用pixabay api在kotlin上开发一个图库应用程序,实现Android Architecture组件和改进以与服务器进行交互。 该应用程序工作正常,但是当我改变配置视图模型返回null! 问题是什么 ? interface PhotoApi { @GET(context.getString(R.string.api_key)) fun getPhotos(): Call } 改造设置 object PhotoRetriever { val BASE_URL = “https://pixabay.com/api/” val service: PhotoApi init { val retrofit = Retrofit.Builder().baseUrl(BASE_URL) .addConverterFactory(GsonConverterFactory.create()).build() service = retrofit.create(PhotoApi::class.java) } } class MainActivity : AppCompatActivity() { //var photoList: List? = null lateinit var viewModel: MainActivityViewModel override fun onCreate(savedInstanceState: Bundle?) […]

编写自定义Retrofit适配器的通用问题

在过去,我已经编写了基于此代码的自定义error handling适配器进行改进: https : //github.com/square/retrofit/blob/master/samples/src/main/java/com/example/retrofit/ErrorHandlingAdapter.java 哪些工作真的很好。 我现在正在Kotlin编写我们的新应用程序,当转换代码时,呼叫适配器工厂给我一个错误,特别是在get函数中。 它转换成这样的样子: override fun get(returnType: Type, annotations: Array, retrofit: Retrofit): CallAdapter? { if (CallAdapter.Factory.getRawType(returnType) != MyCall::class) { return null } if (returnType !is ParameterizedType) { throw IllegalStateException( “MyCall must have generic type (eg, MyCall)”) } val responseType = CallAdapter.Factory.getParameterUpperBound(0, returnType) val callbackExecutor = retrofit.callbackExecutor() return ErrorHandlingCallAdapter(responseType, callbackExecutor). \\This line […]

如何将徽标保留在折叠工具栏上方

我在kotlin编程,我有折叠工具栏的问题,我的主要观点是以下 主视图 滚动我的徽标时,会出现在折叠工具栏后面,如下图所示 当滚动 我需要标志在酒吧前面,如下图所示 结果图像 结果图像用photoshop编辑

无法创建新用户

当我正在尝试创建新帐户时,创建帐户按钮不会在android studio中触发,也不会进入下一个活动,即使在屏幕上也没有显示错误消息。 请帮我解决这个问题。 这是在Kotlin版本以及如何显示错误消息时,用户不填充任何下面提到的字段。 class RegisterActivity : AppCompatActivity( ) { var mAuth: FirebaseAuth? = null var mDatabase: DatabaseReference? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_register) mAuth = FirebaseAuth.getInstance() createaccountET.setOnClickListener { val name = accountdisplaynameET.text.toString().trim() val email = registeremailET.text.toString().trim() val password = registerpasswordET.text.toString().trim() val reenterpassword = reenterpasswordET.text.toString().trim() val Mobile = mobilenumberET.text.toString().trim() val date = […]

如何从kotlin的道路上获得歌曲的ALBUM ART?

请告诉我如何从媒体文件路径中获取媒体文件的专辑封面。 我已经尝试了下面的代码: override fun onBindViewHolder(holder: MyViewHolder?, position: Int) { var songObject = items.get(position) retiever.setDataSource(songObject.songData) var art = retiever.embeddedPicture var image = BitmapDrawable(BitmapFactory.decodeByteArray(art,0,art.size)) holder?.art_icon?.setBackgroundDrawable(image) holder?.title?.text = songObject.songTittle holder?.artist?.text = songObject.songArtist holder?.album?.text = songObject.songAlbum SongPlayingManager(items,position,view).check() holder?.complete_song_view?.setOnClickListener { SongPlayingManager(items,position,view).playSong() } } 此代码不起作用& LogCat显示以下错误: 进程:com.vikanshu.echo,PID:15640 java.lang.NullPointerException:尝试获取null数组的长度