作业一
MainActivity
package com.example.homework;
import android.support.annotation.Nullable;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
import com.example.homework.Fragment_main.TestFragment;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private TextView textView_test;
private TabLayout tabLayout;
private ViewPager viewPager;
private List<TestFragment> list = new ArrayList<>();
private List<String> strList = new ArrayList<>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initData();
initView();
}
private void initData() {
for (int i = 0; i < 3; i++) {
list.add(new TestFragment());
strList.add("第"+i+"个碎片");
}
}
private void initView() {
tabLayout = (TabLayout) findViewById(R.id.tab_layout);
viewPager = (ViewPager) findViewById(R.id.view_pager);
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int i) {
return list.get(i);
}
@Override
public int getCount() {
return list.size();
}
@Nullable
@Override
public CharSequence getPageTitle(int position) {
return strList.get(position);
}
});
tabLayout.setupWithViewPager(viewPager);
}
}
欢迎页面
package com.example.homework;
import android.content.Intent;
import android.os.Handler;
import android.os.Message;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import com.example.homework.Fragment.FirstFragment;
import com.example.homework.Fragment.SecondFragment;
import com.example.homework.Fragment.ThirdFragment;
import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
public class WelcomeActivity extends AppCompatActivity {
private List<Fragment> fragmentList = new ArrayList<>();
private ViewPager viewPager;
private TextView textTime;
private Button buttonToNext;
private Timer timer;
private int index = 3;
private Handler handler = new Handler(){
@Override
public void handleMessage(Message msg) {
if(msg.what == 1){
textTime.setText("倒计时: "+index+"秒");
index--;
if(index == -1){
timer.cancel();
Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
}
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
//初始化数据源
initData();
//初始化控件
initView();
}
private void initData() {
fragmentList.add(new FirstFragment());
fragmentList.add(new SecondFragment());
fragmentList.add(new ThirdFragment());
}
private void initView() {
viewPager = findViewById(R.id.view_page);
textTime = (TextView) findViewById(R.id.text_time);
buttonToNext = (Button) findViewById(R.id.button_toNext);
//viewPager的适配器
PagerAdapter();
//viewPager的监听器
PagerListener();
}
private void PagerListener() {
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int i, float v, int i1) {
}
@Override
public void onPageSelected(int i) {
if(i == fragmentList.size()-1){
buttonToNext.setVisibility(View.VISIBLE);
textTime.setVisibility(View.VISIBLE);
timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
handler.sendEmptyMessage(1);
}
},0,1000);
buttonToNext.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
timer.cancel();
Intent intent = new Intent(WelcomeActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
});
}
}
@Override
public void onPageScrollStateChanged(int i) {
}
});
}
private void PagerAdapter() {
viewPager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager()) {
@Override
public Fragment getItem(int i) {
return fragmentList.get(i);
}
@Override
public int getCount() {
return fragmentList.size();
}
});
}
}
还有6个Fragmet,Main和Welcome的 就不写了
作业二 数据库SQLite
MainActivity
package com.example.homework2;
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private SQLiteDatabase db;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取sqlOpenHelper对象
SqlHelper sql = new SqlHelper(this, "person.db", null, 2);
//打开读写可读可写,没有自动创建
db = sql.getReadableDatabase();
}
public void insert(View view) {
//原生增加
String sql = "insert into student values(?,?,?)";
//开启事务
db.beginTransaction();
for (int i = 0; i < 10; i++) {
db.execSQL(sql,new Object[]{"小明",(i+1),"男"});
}
//开启成功
db.setTransactionSuccessful();
//结束事务
db.endTransaction();
//方法增加
ContentValues contentValues = new ContentValues();
contentValues.put("name","小明");
contentValues.put("sex","男");
contentValues.put("age",1);
db.insert("student",null,contentValues);
}
public void update(View view) {
//方法一
String sql = "update student set name = ? where age = ?";
db.execSQL(sql,new Object[]{"小王",1});
//方法二
ContentValues contentValues = new ContentValues();
contentValues.put("name","小王");
db.update("person",contentValues,"age = ?",new String[]{"1"});
}
public void select(View view) {
//方法一
Cursor cursor = db.rawQuery("select * from student", null);
if(cursor != null){
//同下
while(cursor.moveToNext()){
String name = cursor.getString(cursor.getColumnIndex("name"));
String sex = cursor.getString(cursor.getColumnIndex("sex"));
int age = cursor.getInt(cursor.getColumnIndex("age"));
Toast.makeText(this, name+"-"+sex+"-"+age, Toast.LENGTH_SHORT).show();
}
}
//方法二
//首先获取游标
Cursor student = db.query("student", null, null, null, null, null, null);
//游标不为空则执行
if(student != null){
//游标遍历数据库
while(student.moveToNext()){
String name = student.getString(student.getColumnIndex("name"));
String sex = student.getString(student.getColumnIndex("sex"));
int age = student.getInt(student.getColumnIndex("age"));
Toast.makeText(this, name+"-"+sex+"-"+age, Toast.LENGTH_SHORT).show();
}
}
}
public void delete(View view) {
//方法一
db.execSQL("delete from student where id = ?",new Object[]{1});
//方法二
db.delete("student","age = ?",new String[]{"1"});
}
}
数据库 SqlHelper
package com.example.homework2;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class SqlHelper extends SQLiteOpenHelper {
public SqlHelper( Context context, String name, SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table student(name varchar(20),age int, sex varchar(20))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
}
}
本文详细介绍了一个基于Android平台的应用开发实例,包括MainActivity与WelcomeActivity的实现,以及使用SQLite进行数据库操作的方法。从UI组件的配置到数据的增删改查,全面展示了Android开发与数据库管理的技术要点。
161

被折叠的 条评论
为什么被折叠?



