@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_users); lvProductList = findViewById(R.id.product_list); etProductName = findViewById(R.id.product_name); etProductPrice = findViewById(R.id.product_price); etProductQuantity = findViewById(R.id.product_quantity); btAddProduct = findViewById(R.id.add_product); btDeleteProduct = findViewById(R.id.delete_product); btEditProduct = findViewById(R.id.edit_product); spinner = findViewById(R.id.spinner); dbHelper = new DBHelper(this); db = dbHelper.getWritableDatabase(); btAddProduct.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { String name = etProductName.getText().toString(); float price = Float.parseFloat(etProductPrice.getText().toString()); int quantity = Integer.parseInt(etProductQuantity.getText().toString()); ContentValues values = new ContentValues(); values.put(DBHelper.COLUMN_NAME,name); values.put(DBHelper.COLUMN_PRICE,price); values.put(DBHelper.COLUMN_QUANTITY,quantity); db.insertWithOnConflict(DBHelper.TABLE_NAME,null,values,SQLiteDatabase.CONFLICT_REPLACE); updateUI(); } });
时间: 2024-02-14 11:08:15 浏览: 197
这是 `users` 类中的 `onCreate()` 方法,用于初始化用户界面。在该方法中,首先调用 `setContentView()` 方法,将用户界面的布局文件加载到该活动中。接着,使用 `findViewById()` 方法获取布局文件中定义的 UI 控件,如 `ListView`、`EditText`、`Button`、`Spinner` 等等。然后,创建一个 `DBHelper` 对象,并调用 `getWritableDatabase()` 方法获取可写的数据库。接下来,为添加按钮 `btAddProduct` 添加一个点击事件监听器,在点击按钮时将用户输入的信息插入到数据库中,并调用 `updateUI()` 方法更新 ListView 中的数据。
在这个方法中,还涉及到了一些 Android 的基本操作,如从 `EditText` 中读取用户输入的信息、将信息存储到 `ContentValues` 对象中、使用 `insertWithOnConflict()` 方法将数据插入到数据库中、使用 `updateUI()` 方法更新 ListView 中的数据等等。
相关问题
public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button btn_xby = (Button) findViewById(R.id.btn_xby); Log.i(TAG, "Button ID: " + btn_xby.getId()); btn_xby.setOnClickListener(new View.OnClickListener(){ @Override public void onClick(View view) { Intent intent = new Intent(MainActivity.this, XbyActivity.class); startActivity(intent); } }); } }
好的,您已经在代码中添加了一个打印 Button ID 的语句。现在,当您运行这个应用程序并点击该 Button 时,将会在日志中看到该 Button 的 ID。请注意,TAG 变量仍然需要被初始化,否则编译器会报错。您可以将其初始化为一个字符串常量,例如:
```
private static final String TAG = "MainActivity";
```
这个字符串可以是任何您喜欢的,只要它能够唯一地标识该 Activity 就可以。
public class SecondActivity extends AppCompatActivity { Button button1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.second_layout); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(FirstActivity.this, SecondActivity.class); startActivity(intent); } }); } } 这段代码中为什么不使用Context.startActivity(intent)
这段代码中使用了Activity类的startActivity方法,因为SecondActivity是一个Activity的子类,而Activity类本身就继承了Context类,所以使用Activity类的startActivity方法也是可以的。另外,在Activity内部使用startActivity方法比较方便,因为不需要先获取Context对象,直接使用this就可以了。但在其他类中,可能需要先获取Context对象,再使用其startActivity方法。
阅读全文
相关推荐














