zoukankan      html  css  js  c++  java
  • 每日总结2.9

    今天学习了第二部分

    以下是修改后的AndroidManifest.xml文件。这里添加了<provider.../>标签来包含我们的内容提供者:

    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
        package="com.runoob.contentprovider"
        android:versionCode="1"
        android:versionName="1.0" >
    
        <uses-sdk
            android:minSdkVersion="8"
            android:targetSdkVersion="22" />
    
        <application
            android:allowBackup="true"
            android:icon="@drawable/ic_launcher"
            android:label="@string/app_name"
            android:theme="@style/AppTheme" >
    
            <activity
                android:name="com.runoob.contentprovider.MainActivity"
                android:label="@string/app_name" >
    
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
    
            </activity>
    
            <provider android:name="StudentsProvider"
                android:authorities="com.example.provider.College" >
            </provider>
    
        </application>
    
    </manifest>

    下面是res/layout/activity_main.xml文件的内容:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
        android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
    
        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="内容提供者实例"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:textSize="30dp" />
    
        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="www.runoob.com"
            android:textColor="#ff87ff09"
            android:textSize="30dp"
            android:layout_below="@+id/textView1"
            android:layout_centerHorizontal="true" />
    
        <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/imageButton"
            android:src="@drawable/ic_launcher"
            android:layout_below="@+id/textView2"
            android:layout_centerHorizontal="true" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/button2"
            android:text="添加"
            android:layout_below="@+id/editText3"
            android:layout_alignRight="@+id/textView2"
            android:layout_alignEnd="@+id/textView2"
            android:layout_alignLeft="@+id/textView2"
            android:layout_alignStart="@+id/textView2"
            android:onClick="onClickAddName"/>
    
        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/editText"
            android:layout_below="@+id/imageButton"
            android:layout_alignRight="@+id/imageButton"
            android:layout_alignEnd="@+id/imageButton" />
    
        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/editText2"
            android:layout_alignTop="@+id/editText"
            android:layout_alignLeft="@+id/textView1"
            android:layout_alignStart="@+id/textView1"
            android:layout_alignRight="@+id/textView1"
            android:layout_alignEnd="@+id/textView1"
            android:hint="姓名"
            android:textColorHint="@android:color/holo_blue_light" />
    
        <EditText
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/editText3"
            android:layout_below="@+id/editText"
            android:layout_alignLeft="@+id/editText2"
            android:layout_alignStart="@+id/editText2"
            android:layout_alignRight="@+id/editText2"
            android:layout_alignEnd="@+id/editText2"
            android:hint="年级"
            android:textColorHint="@android:color/holo_blue_bright" />
    
        <Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="查询"
            android:id="@+id/button"
            android:layout_below="@+id/button2"
            android:layout_alignRight="@+id/editText3"
            android:layout_alignEnd="@+id/editText3"
            android:layout_alignLeft="@+id/button2"
            android:layout_alignStart="@+id/button2"
            android:onClick="onClickRetrieveStudents"/>
    
    </RelativeLayout>

    确保res/values/strings.xml文件中有以下内容:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    
        <string name="app_name">Content Provider</string>
        <string name="action_settings">Settings</string>
    
    </resources>

    让我们运行刚刚修改的 Content Provider 应用程序。我假设你已经在安装环境时创建了 AVD。打开你的项目中的活动文件,点击工具栏中的图片图标来在 Android Studio 中运行应用程序。Android Studio 在 AVD 上安装应用程序并启动它。如果一切顺利,将在模拟器窗口上显示如下:

    图片

    输入姓名和年级,并点击"添加"按钮,这将在数据中添加一条学生记录,并在底部删除一条信息。信息内容显示包含添加进数据库的记录数的内容提供者URI。这个操作使用了insert()方法。重复这个过程在我们的内容提供者的数据库中添加更多的学生。

    图片

    一旦你完成数据库记录的添加,是时候向内容提供者要求给回这些记录。点击"查询"按钮,这将通过实现的 query() 方法来获取并显示所有的数据记录。

    你可以在 MainActivity.java 中提供回调方法,来编写更新和删除的操作,并修改用户界面来添加更新和删除操作。

    你可以通过这种方式使用已有的内容提供者,如通讯录。你也可以通过这种方式来开发一个优秀的面向数据库的应用,你可以像上面介绍的实例那样来执行素有的数据库操作,如读、写、更新和删除。

  • 相关阅读:
    扩展:13-SpringBoot-尚硅谷-基础入门
    Java-JDK动态代理(AOP)使用及实现原理分析
    程序员常用算法合集
    数据结构-图
    多叉树的基本概念
    平衡二叉树(AVL树)
    TP5返回多维数组
    使用HttpSession实现验证码
    thinkphp6使用
    无法链接远程数据库
  • 原文地址:https://www.cnblogs.com/wanghaoning/p/14912736.html
Copyright © 2011-2022 走看看