contextlib иногда не срабатывает [дублировать]

В классе адаптера

public View getView(final int position, View convertView, ViewGroup parent) {
    LayoutInflater inflater = getLayoutInflater();
    View row = inflater.inflate(R.layout.vehicals_details_row, parent, false);
    Button deleteImageView = (Button) row.findViewById(R.id.DeleteImageView);
    deleteImageView.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            //...
        }
    });
}

Но вы можете получить проблему - listView строка не кликабельна . Решение:

  • сделать ListView focusable android:focusable="true"
  • Кнопка не настраивается android:focusable="false"
10
задан Tshepang 10 September 2014 в 03:44
поделиться

2 ответа

Python не будет очищать файл после каждого write. Вам нужно либо вручную очистить его с помощью flush :

>>> f.flush()

, либо закрыть его с помощью close :

>>> f.close()

При использовании файлов в реальной программе рекомендуется использовать with:

with open('some file.txt', 'w') as f:
    f.write('some text')
    # ...

Это гарантирует, что файл будет закрыт, даже если выбрано исключение. Если вы хотите работать в REPL, однако, вы можете захотеть закрыть его вручную, так как он попытается прочитать всю цель with, прежде чем пытаться ее выполнить.

14
ответ дан icktoofay 4 September 2018 в 10:14
поделиться

Вам нужно закрыть файл:

>>> f.close()

Кроме того, я бы рекомендовал использовать ключевое слово with с открытыми файлами:

with open("/export/home/vignesh/resres.txt","w") as f:
    f.write("hello world") 
    f.write("\t".join(["hello","world"]))

Он автоматически закроет их для вас.

5
ответ дан iCodez 4 September 2018 в 10:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: