Есть поток которое получает с сайта имя пользователя:
public class ThreadNews extends AsyncTask<String,Void,String> {
@Override
protected String doInBackground(String... strings) {
try {
URL url = new URL (strings[0]);
HttpURLConnection connection=(HttpURLConnection) url.openConnection();
connection.setRequestProperty("Content-Type", "application/json");
InputStream inputStream=connection.getInputStream();
InputStreamReader isr =new InputStreamReader(inputStream);
BufferedReader bRead=new BufferedReader(isr);
StringBuilder sBuilder=new StringBuilder();
String line;
while ((line=bRead.readLine())!=null){
sBuilder.append(line);
}
isr.close();
inputStream.close();
return sBuilder.toString();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return "";
}
}
Во время выполнения строки return sBuilder.toString();
значение sBuilder="Admin", но когда я получаю это значение из потока:
LayoutInflater li = LayoutInflater.from(this);
View promptsView = li.inflate(R.layout.alert_dialog_layout, null);
AlertDialog.Builder mDialogBuilder = new AlertDialog.Builder(this);
mDialogBuilder.setView(promptsView);
final EditText userInputLogin = (EditText) promptsView.findViewById(R.id.itLogin);
final EditText userInputPass = (EditText) promptsView.findViewById(R.id.itPass);
mDialogBuilder.setCancelable(false)
.setPositiveButton("Вход", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
Toast.makeText(MainActivity.this,"asdsa",Toast.LENGTH_SHORT).show();
try {
Res= new ThreadNews().execute("http://newsyou.000webhostapp.com/authorization.php?L="+userInputLogin.getText().toString()+"&P="+userInputPass.getText().toString()).get();
if((Res.equals(""))&&(Res!=null)){
Toast.makeText(MainActivity.this,"Неверный логин или пароль", Toast.LENGTH_SHORT).show();
}else{
User.setName(Res);
User.setID(Integer.parseInt(new ThreadNews().execute("http://newsyou.000webhostapp.com/GetUserId.php?Name="+User.getName()).get()));
dialog.cancel();
LoadNews();
}
} catch (ExecutionException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
})
.setNegativeButton("Закрыть", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
dialog.cancel();
}
})
.setNeutralButton("Регистрация", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
AlertDialog alertDialog = mDialogBuilder.create();
alertDialog.show();
возникает ошибка on a null object reference
на строке User.setName(Res)
.
Нужно было создать экземпляр, а не только объявить:
User=new UserClass("Visitor",-1);
Есть сторонний виджет, который представляет собой просто форму обратной связи iframe, вопрос: возможно ли изменить в нем какие-то стили на моем...
У меня есть папка с папками, в каждой из них лежит несколько markdown файлов:
Когда пытаюсь создать экземпляр класса, вылетает ошибка
Хотела на массив повесить 2 фильтраЛогика такая: 1 - фильтр для поиска