Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
Страниц: 1 2 [3] 4 5 6 ... 10
 21 
 : 16-05-2020 04:55 
Автор Arseny.7132 - Последний ответ от Finch
Java прямым текстом говорит, что у тебя пустой список. И скорее всего не инициирован.
Цитата
java.lang.NullPointerException: Attempt to get length of null array at com.example.arseny.myapplication.MainActivity.searchItem(MainActivity.java:58)

 22 
 : 15-05-2020 17:26 
Автор Arseny.7132 - Последний ответ от Arseny.7132
На главной активности

Код: (Java)
package com.example.arseny.myapplication;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;

import java.util.ArrayList;
import java.util.Arrays;

public class MainActivity extends AppCompatActivity {

    String[] items;
    ArrayList<String> listItems;
    ArrayAdapter<String> adapter;
    ListView listView;
    EditText editText;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listView=(ListView)findViewById(R.id.listView);
        editText=(EditText)findViewById(R.id.txtsearch);
        initList();

        editText.addTextChangedListener(new TextWatcher() {

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            }

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                if(s.toString().equals("")){
                    initList();
                } else {
                    searchItem(s.toString());
                }
            }

            @Override
            public void afterTextChanged(Editable s) {
            }

        });

    }

    public void searchItem(String textToSearch){
        for(String item:items){
            String textToSearch1 = textToSearch.toLowerCase();

            if(!item.toLowerCase().contains(textToSearch1)){
                listItems.remove(item);
            }
        }
        adapter.notifyDataSetChanged();
    }
    public void initList() {
        String[] items = getResources().getStringArray(R.array.psnames);
        listItems = new ArrayList<>(Arrays.asList(items));
        adapter = new ArrayAdapter<String>(this, R.layout.list_item, R.id.txtitem, listItems);
        listView.setAdapter(adapter);

        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View view,
                                    int position, long id) {

                String  itemValue = (String) listView.getItemAtPosition(position);
                Intent intent = new Intent();
                intent.setClass(MainActivity.this, Activity_Two.class);
                intent.putExtra("names", itemValue);
                startActivity(intent);
                }
        });
    }
}
 

Создал поиск по строкам сначала из массива, а потом вот этой строчкой
Код: (Java)
String[] items = getResources().getStringArray(R.array.psnames);

решил добавлять строки из res/values/strings.xml. При этом строки от туда берутся, высвечиваются на главном экране, но вот если нажимаю на editview и начинаю вводить слово приложение вылетает. Кстати Android Studio выдает такую ошибку

Код: (Java)
E/AndroidRuntime: FATAL EXCEPTION: main
       Process: com.example.arseny.myapplication, PID: 12543
       java.lang.NullPointerException: Attempt to get length of null array at com.example.arseny.myapplication.MainActivity.searchItem(MainActivity.java:58)
       at com.example.arseny.myapplication.MainActivity$1.onTextChanged(MainActivity.java:45)
       at android.widget.TextView.sendOnTextChanged(TextView.java:7679)
       at android.widget.TextView.handleTextChanged(TextView.java:7739)
       at android.widget.TextView$ChangeWatcher.onTextChanged(TextView.java:9472)
       at android.text.SpannableStringBuilder.sendTextChanged(SpannableStringBuilder.java:964)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:515)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:454)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:33)
       at android.view.inputmethod.BaseInputConnection.replaceText(BaseInputConnection.java:685)
       at android.view.inputmethod.BaseInputConnection.commitText(BaseInputConnection.java:197)
       at com.android.internal.widget.EditableInputConnection.commitText(EditableInputConnection.java:184)
       at com.android.internal.view.IInputConnectionWrapper.executeMessage(IInputConnectionWrapper.java:286)
       at com.android.internal.view.IInputConnectionWrapper$MyHandler.handleMessage(IInputConnectionWrapper.java:78)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:135)
       at android.app.ActivityThread.main(ActivityThread.java:5305)
       at java.lang.reflect.Method.invoke(Native Method)
       at java.lang.reflect.Method.invoke(Method.java:372)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698)

Помогите мне пожалуйста в этом разобраться!

 23 
 : 08-05-2020 08:20 
Автор Shouldercannon - Последний ответ от darkelf
Не уверен, но может Вам нужно сделать дочернее окно не модальным, тогда оно не должно будет блокировать основное окно.

 24 
 : 07-05-2020 20:19 
Автор Travolta25 - Последний ответ от RXL
Посмотри код по последней ссылке. GetDIBits как раз копирует в буфер lpbitmap.

 25 
 : 07-05-2020 11:06 
Автор Shouldercannon - Последний ответ от Shouldercannon
А зачем вообще это оповещение?

Как минимум не делать show для окна, тогда оно и не будет всплывать. Рассмотри другие способы оповещения, кроме окна.

Ну и самый костыльный способ: после show верни фокус в свою форму.

Как вариант да. Нужно для чата.

 26 
 : 07-05-2020 11:03 
Автор Travolta25 - Последний ответ от Optimus1
В том то и дело, мне не нужно сохранять изображение, мне нужно получить доступ к изображению, когда оно где тов памяти находится, чтобы лишних действий по сохранению не делать.

 27 
 : 07-05-2020 10:58 
Автор Shouldercannon - Последний ответ от RXL
А зачем вообще это оповещение?

Как минимум не делать show для окна, тогда оно и не будет всплывать. Рассмотри другие способы оповещения, кроме окна.

Ну и самый костыльный способ: после show верни фокус в свою форму.

 28 
 : 07-05-2020 10:57 
Автор Travolta25 - Последний ответ от RXL
https://docs.microsoft.com/ru-ru/windows/win32/gdi/bitmap-functions

Тут есть более полный пример: https://docs.microsoft.com/ru-ru/windows/win32/gdi/capturing-an-image
Там используется захват изображения собственного окна. В теме наоборот, свое окно скрывается и захватывается изображение всего экрана. Зато по ссылке есть пример, как сохранить полученный битмап.

 29 
 : 07-05-2020 08:07 
Автор Shouldercannon - Последний ответ от Shouldercannon
Доброго времени суток!
Есть формы главная и дочерняя.
На главной форме Memo, на дочерней ничего (просто форма оповещения).
Во время набора текста в Memo может открыться дочерняя форма с каким-нибудь оповещением
Код:
Код: (Delphi)
FormPopup.Show;
Проблема в том, что эта форма становится активной и дальнейший набор текста в Memo невозможен, пока снова не активируешь главную форму.
Как можно решить данную проблему?

 30 
 : 07-05-2020 05:25 
Автор Travolta25 - Последний ответ от Optimus1
Поток? Здесь нет такого слова. Есть слово блок.

На выходе — hbmScreen — графика формата bmp. Можно сохранить в файл.

Прошу прощения, действительно блок, а а не поток.

Подскажите пожалуйста, а что из себя представляет данный hbmScreen  - это какой то массив байтов в памяти ? Если да, то можно ли получить доступ для его просмотра ?
Мне в данном случае по крайней мере на данный момент не нужно его сохранять, я хочу найти совпадение определенной последовательности пикселей, ну то есть найти на скрине рабочего стола какой то заданный кусок, к примеру значок какого то окна или что то подобное.

Страниц: 1 2 [3] 4 5 6 ... 10
Powered by SMF 1.1.21 | SMF © 2015, Simple Machines