【Android Kotlin】关于使用Http来获取数据的基本套路

【Android Kotlin】关于使用Http来获取数据的基本套路,第1张

1.新建一个URI.java用来存放网络请求地址和端口地址

public class URI {

    public static final String LOGIN = "192.168.2.1/api/login"

}

2.新建界面TestActivity.java

3.编写界面,由于只用于测试用,所以在这只写了TextView,具体需求看自己。

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"

tools:context=".TestActivity">

android:id="@+id/tv_one"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/>

android:id="@+id/tv_two"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/>

android:id="@+id/tv_three"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/>

android:id="@+id/tv_fore"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据"/>

android:id="@+id/tv_five"

android:layout_width="0dp"

android:minHeight="48dp"

android:layout_height="match_parent"

android:layout_weight="1"

android:gravity="center"

tools:text="数据" />

效果图如下:

4.编写实体类TestBean

这个根据所给的Json数据来写

 5.编写适配器TestAdapter(我这里用的是BaseQuickAdapter万能适配器)

class TestAdapter :BaseQuickAdapter<实体类, BaseViewHolder>(你要传数据界面) {     override fun convert(helper: BaseViewHolder, item: 实体类) {

helper.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

.setText(控件名,item.要放的数据)

}

}

6.最主要的一步,编写Activity.java

首先要初始化,由于kotlin不需要初始化控件,所以我们只需要初始化我们的适配器

mAdapter = ManagementAdapter()

然后我们要获取数据(我这里用了一下RxJava的东西)

fun getManagerfee(){

    NetWork.getEnquiryDetailsApi().getManagerPriceList(inquiryId).async(this).subscribe({

    it.isSuccess.yes {

        mAdapter.setNewData(it.data)

    }.otherwise {

        onRequestFail(it.code, it.message)

        }

    }

}

7.最后基本上如果需要从上一个界面获取数据,需要从上一个接口带过来一个id的字段,比如我这个从上一个界面带过来的inquiryId,我们就需要写一下object

companion object {

private const val EXTRA_PARAM_ID ="inquiry_id"

    fun launch(context: Context, inquiryId: String) {

            context.startActivity(Intent(context, ManagePreActivity::class.java).apply {

            putExtra(EXTRA_PARAM_ID, inquiryId)

        })

    }

}

服务端可以使用Sqlite数据库吗?

当然是可以的。 SQLite在小、中型流量的网站上还是可以用的。通常情况下,每天点击量在100K(10万)以下是完全没有问题的。

首先要添加依赖包:

再上个Dao的代码:


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6725405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存