如果我没有在点击上使用任何条件来调用另一个Activity,那么它可以正常工作,但是当我使用某些条件时它没有响应,既不调用‘SELECT 'blah from first select'
SELECT 'blah from second select'
SELECT execquery.last_execution_time AS [Date Time], execsql.text AS [Script] FROM sys.dm_exec_query_stats AS execquery
CROSS APPLY sys.dm_exec_sql_text(execquery.sql_handle) AS execsql
-- where execsql.text like '%MHD%'
ORDER BY execquery.last_execution_time DESC’
部分也不调用if
:< / p>
else
答案 0 :(得分:2)
&amp;&amp;和和条件中的strGetName.equals(“”)。
if (strGetEmail.equals("") && strGetName.equals(""))
并更改
strGetName = pref.getString("key_name", null);
strGetEmail = pref.getString("key_email", null);
到
strGetName = pref.getString("key_name", "");
strGetEmail = pref.getString("key_email", "");
答案 1 :(得分:0)
您收到NullPointerException,因为您的字符串很可能为null。检查您是否在从读取之前在SharedPref 中写入值。
此外,如果您还不想在本地存储中写入值,则应该将字符串的默认值设为pref.getString("key_name","")
,或者在检查之前确保strGetEmail!=null
equals()
。
答案 2 :(得分:0)
if..else
部分无效,因为NullpointerException
声明中有if
。您可能会在.equals
值上致电null
。
更改此
strGetName = pref.getString("key_name", null);
strGetEmail = pref.getString("key_email", null);
进入这个
strGetName = pref.getString("key_name", "");
strGetEmail = pref.getString("key_email", "");
或更改您的if
代码,
if (strGetEmail == null || strGetName== null) {
....
}
答案 3 :(得分:0)
您只需替换这段代码
strGetName = pref.getString("key_name", null);
strGetEmail = pref.getString("key_email", null);
使用这段代码
strGetName = pref.getString("key_name", "");
strGetEmail = pref.getString("key_email", "");
答案 4 :(得分:0)
您始终会获得您提供的空值作为默认值。 根据这个改变它:
strGetName = pref.getString("key_name", "");
strGetEmail = pref.getString("key_email", "");