安卓为什么我的按钮不能在这个有多个java类的程序中工作?
我有以下java类:
补充资料。爪哇
public class AddItem extends AppCompatActivity implements View.OnClickListener {
EditText editTextItemName,editTextBrand;
Button buttonAddItem;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
editTextItemName = (EditText)findViewById(R.id.et_item_name);
editTextBrand = (EditText)findViewById(R.id.et_brand);
buttonAddItem = (Button)findViewById(R.id.btn_add_item);
buttonAddItem.setOnClickListener(this);
}
private void addItemToSheet() {
final ProgressDialog loading = ProgressDialog.show(this,"Adding Item","Please wait");
final String name = editTextItemName.getText().toString().trim();
final String brand = editTextBrand.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, "https://script.google.com/macros/s/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/exec",
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
loading.dismiss();
Toast.makeText(AddItem.this,response, Toast.LENGTH_LONG).show();
Intent intent = new Intent(getApplicationContext(),MainActivity2.class);
startActivity(intent);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}
) {
@Override
protected Map<String, String> getParams() {
Map<String, String> parmas = new HashMap<>();
parmas.put("action","addItem");
parmas.put("itemName",name);
parmas.put("brand",brand);
return parmas;
}
};
int socketTimeOut = 50000;
RetryPolicy retryPolicy = new DefaultRetryPolicy(socketTimeOut, 0, DefaultRetryPolicy.DEFAULT_BACKOFF_MULT);
stringRequest.setRetryPolicy(retryPolicy);
RequestQueue queue = Volley.newRequestQueue(this);
queue.add(stringRequest);
}
@Override
public void onClick(View v) {
if(v==buttonAddItem){
addItemToSheet();
}
}
}
主要活动。爪哇:
public class MainActivity extends AppCompatActivity implements OnMapReadyCallback {
private GoogleMap mMap;
等等。。。我不选这个,因为它太长了。它获取位置信息,并与所有按钮一起正常工作
维护活动2。爪哇:
public class MainActivity2 extends AppCompatActivity implements View.OnClickListener {
Button buttonAddItem;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
buttonAddItem = (Button)findViewById(R.id.btn_add_item);
buttonAddItem.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if(v==buttonAddItem){
Intent intent = new Intent(getApplicationContext(),AddItem.class);
startActivity(intent);
}
}
}
这就是我对清单中所有内容的称呼:
<activity
安卓:name=".MainActivity"
安卓:label="@string/app_name" >
<intent-filter>
<action 安卓:name="安卓.intent.action.MAIN" />
<category 安卓:name="安卓.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity 安卓:name=".MainActivity2"/>
<activity 安卓:name=".AddItem"/>
</application>
你知道为什么btn_从主活动中添加_项目吗。xml在这里没有任何作用?:/它应该是发送文字从et_品牌和et_项目名称到我的谷歌表
# 1 楼答案
我相信你出错的原因可能是因为你正在检查
而不是检查ID是否相同
这是你需要做的