Java 带null的Android字符串
我对这个代码有问题Java 带null的Android字符串,java,android,Java,Android,我对这个代码有问题 if ((equip != null) && equip.trim().equals("")){ final Dialog dialog = new Dialog(getActivity()); dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE); dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FU
if ((equip != null) && equip.trim().equals("")){
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout_equip);
String equip = reserveComp.getString(TAG_EQUIP);
Log.d("Equip", equip);
我的另一半是
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout);
因此,如果我的字符串为null或空,我将使用此对话框
对话框.setContentView(R.layout.dialog\u布局);
否则我就用这个
dialog.setContentView(R.layout.dialog\u layout\u设备)
我的logcat给我这个代码的输出
if ((equip != null) && equip.trim().equals("")){
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout_equip);
String equip = reserveComp.getString(TAG_EQUIP);
Log.d("Equip", equip);
D/装备﹕ Projetor,所以它打开了
dialog.setContentView(R.layout.dialog_layout);
但是当我有了这个输出
D/装备﹕ 空值,然后打开相同的
那怎么了
更新
这是我的全部代码
JSONObject reserveComp = reqFeitasDetail.getJSONObject(0);
String equip = reserveComp.getString(TAG_EQUIP);
Log.d("Equip", equip);
if ((equip == null) || equip.trim().equals("")){
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout);
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
dialog.show();
Button img = (Button) dialog.findViewById(R.id.close_button);
TextView data = (TextView) dialog.findViewById(R.id.data);
TextView sala = (TextView) dialog.findViewById(R.id.sala);
TextView hora = (TextView) dialog.findViewById(R.id.hora_inicial);
TextView fim = (TextView) dialog.findViewById(R.id.hora_final);
data.setText(reserveComp.getString(TAG_DATA));
sala.setText(reserveComp.getString(TAG_NOME));
hora.setText(reserveComp.getString(TAG_TEMPO));
fim.setText(reserveComp.getString(TAG_TEMPOFIM));
img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
} else {
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout_equip);
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
dialog.show();
Button img = (Button) dialog.findViewById(R.id.close_button);
TextView data = (TextView) dialog.findViewById(R.id.data);
TextView sala = (TextView) dialog.findViewById(R.id.sala);
TextView equipamento = (TextView) dialog.findViewById(R.id.equip);
TextView hora = (TextView) dialog.findViewById(R.id.hora_inicial);
TextView fim = (TextView) dialog.findViewById(R.id.hora_final);
data.setText(reserveComp.getString(TAG_DATA));
sala.setText(reserveComp.getString(TAG_NOME));
equipamento.setText(reserveComp.getString(TAG_EQUIP));
hora.setText(reserveComp.getString(TAG_TEMPO));
fim.setText(reserveComp.getString(TAG_TEMPOFIM));
img.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
}
我有这个logcat输出
D/Reserva Sala completa﹕ {"tag":"reqEquipFull","success":1,"error":0,"reqEquipFull":[{"data":"2015-06-12","sala":"21","inicio":"14:05:00","fim":"15:45:00","nome":null}]}
D/装备﹕ 空的
我仍然有同样的对话框问题,所有(空和非空)打开这个对话框
dialog.setContentView(R.layout.dialog_layout_equip);
将if语句中的and条件更改为or条件
if ((equip != null) && equip.trim().equals(""))
到
将if语句中的and条件更改为or条件
if ((equip != null) && equip.trim().equals(""))
到
您的
和
条件将永远不会为真
,您正在if语句中检查非空
if ((equip != null) && equip.trim().equals("")){
应该是或
,如果=
为空
if (equip == null || equip.trim().equals("")){
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout_equip);
} else {
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout);
}
您的
和
条件将永远不会为真
,您正在if语句中检查非空
if ((equip != null) && equip.trim().equals("")){
应该是或
,如果=
为空
if (equip == null || equip.trim().equals("")){
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout_equip);
} else {
final Dialog dialog = new Dialog(getActivity());
dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
dialog.setContentView(R.layout.dialog_layout);
}
要检查字符串是否为null或空,if块内的条件应为
if ((equip == null) || equip.trim().equals("")){...}
如果要执行以下操作,还应切换if-else语句中的代码块
因此,如果我的字符串为null或空,我将使用dialog.setContentView(R.layout.dialog\u layout);否则我使用这个对话框.setContentView(R.layout.dialog\u layout\u设备)
要检查字符串是否为null或空,if块内的条件应为
if ((equip == null) || equip.trim().equals("")){...}
如果要执行以下操作,还应切换if-else语句中的代码块
因此,如果我的字符串为null或空,我将使用dialog.setContentView(R.layout.dialog\u layout);否则我使用这个对话框.setContentView(R.layout.dialog\u layout\u设备)
要测试
equipment
是否为空,您可以使用:if(TextUtils.isEmpty(equipment))
不工作…我必须为空要测试equipment
是否为空,您可以使用:if(TextUtils.isEmpty(equipment))
不工作…我必须为空