Вам необходимо вернуть предмет, который должен быть обработан. Лучше всего будет создать новую функцию и вернуть элемент.
_renderItem = (item, index) => {
console.log(item, index);
return (
<View key={index}>
<View>
<Text>Time ago</Text>
<Text>@username</Text>
</View>
<View>
<Image
source={{
// uri:
// "https://source.unsplash.com/random/500x" +
// Math.floor(Math.random() * 800 + 500)
uri: "https://source.unsplash.com/random/500x800/"
}}
style={styles.profilephoto}
/>
</View>
<View>
<Text>Caption of post</Text>
<Text>View all Comments</Text>
</View>
</View>
)
}
render() {
let i = 0;
return (
<View style={styles.container}>
<View style={styles.header}>
<Text> feed </Text>
</View>
<FlatList
refreshing={this.state.refresh}
onRefresh={this.loadNew}
data={this.state.photo_feed}
keyExtractor={(item, index) => "" + index}
style={styles.flatlist}
renderItem={this._renderItem}
/>
</View>
);
}
Должно быть что-то не так с Вашим кодом.
Я протестировал этот код, он работает:
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowWindow(Form2.Handle, SW_SHOWNOACTIVATE);
Form2.Visible := True;
end;
Старайтесь использовать Visible
, нет Show
! Иначе это переопределит SW_SHOWNOACTIVATE
.
Можно показать окно (не модальный) и сбросить фокус к mainwindow.
procedure TMainForm.ButtonClick(Sender: TObject);
begin
OtherForm.Show;
SetFocus;
end;
Протестированный на 2006.
Это не показывает другую форму на вершине. Но это - самый счетчик, интуитивный, чтобы иметь окно на вершине, которая не имеет фокуса.
Я использовал это в прошлом
SetWindowPos(WindowHandle, HWND_TOP, 0, 0, 0, 0, SWP_NOACTIVATE or SWP_NOSIZE or SWP_NOMOVE);
Я не протестировал это с последними версиями Delphi хотя...
Если возможно, Вы должны, рассмотрел использование своего рода окна подсказки для отображения информации об уведомлении. Подсказка не украдет фокус от Вас главное окно, когда это будет отображено или когда пользователь нажимает на него. Регулярная форма будет иметь границу по умолчанию и если пользователь нажмет на ту границу, то Ваша основная форма освободит фокус.
Вот некоторый абсолютный код, чтобы сделать это. Подсказка исчезает, когда свободный назван; однако Вы были бы более обеспеченной установкой таймера, чем использование сна.
with THintWindow.Create(nil) do
try
ActivateHint(MyRect, 'My Notification');
Sleep(DisplayTime);
finally
Free;
end
Пожалуйста:
// you have set your 2nd form as non resizable, without border nor title etc...
Form2.Enabled := False; // prevent the 2nd form to grab focus even when clicked
SetWindowPos(Form2.Handle, HWND_TOP, 0, 0, 0, 0, SWP_SHOWWINDOW or SWP_NOACTIVATE or SWP_NOSIZE or SWP_NOMOVE);
// be sure to hide it automatically when done as it is disabled...
Я сделал это в прошлом, но у меня нет кода, потому что это был propietary в последнем задании (извините).
Если я помню хорошо, что я сделал был:
Код (шага 3) мог пройти примерно так:
var p: TPopupForm;
begin
p := TPopupForm.Create(nil);
p.ShowWindow;
p.Release;
end;
Я сожалею, если это не работает, у меня нет Delphi также.