android中mvvm设计模式

来源:互联网 发布:mac 贴膜 涂层脱落 编辑:程序博客网 时间:2024/05/29 15:37

------------------------------------------

配置gradle


dataBinding{    enabled true}
------------------------------------------

layout文件的配置

<layout xmlns:android="http://schemas.android.com/apk/res/android"  ><data>    <variable        name="user"        type="com.example.zoneker.kotlintest.User"/></data>
<LinearLayout    android:layout_width="match_parent"    android:layout_height="match_parent"    xmlns:tools="http://schemas.android.com/tools"    android:orientation="vertical"    tools:context="com.example.zoneker.kotlintest.MainActivity">    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@{user.name.toString()}"    />    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@{String.valueOf(user.age)}"        />    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="@{user.sex.toString()}"        /></LinearLayout>

</layout>--------------------------------------java代码写法
public class MyActivity extends Activity {    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        ActivityMainBinding binding = DataBindingUtil.setContentView(this,R.layout.activity_main);        User user = new User("小强",34,"男");        binding.setUser(user);    }}-------------------------------------转出kotlin后会出错Information:Gradle tasks [:app:assembleDebug]E:\androidstudio-project\KotlinTest\app\src\main\java\com\example\zoneker\kotlintest\MainActivity.ktError:(7, 39) Unresolved reference: databindingError:(14, 64) Unresolved reference: ActivityMainBindingError:Execution failed for task ':app:compileDebugKotlin'.> Compilation error. See log for more detailsInformation:BUILD FAILEDInformation:Total time: 4.624 secsInformation:3 errorsInformation:0 warningsInformation:See complete output in console-------------------------------------------------kotlin事例代码
var activityMainBind  = DataBindingUtil.setContentView<ActivityMainBinding>(this,R.layout.activity_main)val user : User = User("小强",45,"男")activityMainBind.user = user错误原因ClassLoader referenced unknown path: /data/app/com.example.zoneker.kotlintest-2/lib/arm64谁知道这种问题该如何解决