Android编程是现代软件开发中非常热门的一个领域。随着智能手机的普及,Android应用的开发需求不断增长。以下是一些实战案例,通过这些案例,你可以快速上手Android编程。
1. 创建简单的Android应用
案例描述
创建一个简单的Android应用,该应用显示一个欢迎界面,用户点击按钮后跳转到另一个活动(Activity)。
实战步骤
- 创建新项目:在Android Studio中创建一个新的Android项目。
- 设计布局:在
res/layout/activity_main.xml文件中设计主界面布局。 - 编写代码:在
MainActivity.java文件中编写主活动(MainActivity)的代码。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
startActivity(intent);
}
});
}
}
- 创建第二个Activity:创建一个新的Activity,命名为
SecondActivity,并设计其布局。
2. 使用Intent传递数据
案例描述
在主Activity中获取用户输入的姓名,通过Intent传递给第二个Activity,并在第二个Activity中显示。
实战步骤
- 在
MainActivity中获取用户输入的姓名。 - 创建一个Intent,将姓名作为字符串传递给
SecondActivity。 - 在
SecondActivity中获取传递过来的姓名并显示。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText editText = findViewById(R.id.editText);
Button button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = editText.getText().toString();
Intent intent = new Intent(MainActivity.this, SecondActivity.class);
intent.putExtra("name", name);
startActivity(intent);
}
});
}
}
public class SecondActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_second);
TextView textView = findViewById(R.id.textView);
String name = getIntent().getStringExtra("name");
textView.setText("Hello, " + name + "!");
}
}
3. 使用SQLite数据库存储数据
案例描述
创建一个Android应用,用于存储和查询联系人信息。
实战步骤
- 创建数据库:在
res/xml目录下创建一个数据库配置文件database.xml。 - 创建数据库类:创建一个数据库类,用于创建数据库、执行SQL语句等。
- 创建联系人实体类:创建一个联系人实体类,用于存储联系人信息。
- 添加联系人:在主Activity中添加联系人信息到数据库。
- 查询联系人:在主Activity中查询数据库中的联系人信息。
public class DatabaseHelper extends SQLiteOpenHelper {
private static final String DATABASE_NAME = "database.db";
private static final int DATABASE_VERSION = 1;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE contacts (id INTEGER PRIMARY KEY, name TEXT, phone TEXT)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS contacts");
onCreate(db);
}
public void addContact(String name, String phone) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put("name", name);
values.put("phone", phone);
db.insert("contacts", null, values);
db.close();
}
public Cursor getAllContacts() {
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.query("contacts", new String[]{"id", "name", "phone"}, null, null, null, null, null);
return cursor;
}
}
4. 使用RecyclerView显示列表
案例描述
创建一个Android应用,使用RecyclerView显示一个联系人列表。
实战步骤
- 创建布局文件:在
res/layout目录下创建一个列表项布局文件item_contact.xml。 - 创建适配器:创建一个适配器类,用于绑定数据和监听事件。
- 设置RecyclerView:在主Activity中设置RecyclerView,并使用适配器填充数据。
public class ContactAdapter extends RecyclerView.Adapter<ContactAdapter.ViewHolder> {
private List<Contact> contactList;
public ContactAdapter(List<Contact> contactList) {
this.contactList = contactList;
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_contact, parent, false);
return new ViewHolder(view);
}
@Override
public void onBindViewHolder(ViewHolder holder, int position) {
Contact contact = contactList.get(position);
holder.textViewName.setText(contact.getName());
holder.textViewPhone.setText(contact.getPhone());
}
@Override
public int getItemCount() {
return contactList.size();
}
public static class ViewHolder extends RecyclerView.ViewHolder {
TextView textViewName;
TextView textViewPhone;
public ViewHolder(View itemView) {
super(itemView);
textViewName = itemView.findViewById(R.id.textViewName);
textViewPhone = itemView.findViewById(R.id.textViewPhone);
}
}
}
通过以上实战案例,你可以快速上手Android编程。当然,这只是Android编程的冰山一角,希望这些案例能够帮助你更好地理解和掌握Android开发。
