V pořadí šestou knihou autora Martina Malého, která vychází v Edici CZ.NIC, správce české národní domény, je titul Kity, bity, neurony. Kniha s podtitulem Moderní technologie pro hobby elektroniku přináší ucelený pohled na svět současných technologií a jejich praktické využití v domácích elektronických projektech. Tento knižní průvodce je ideální pro každého, kdo se chce podívat na současné trendy v oblasti hobby elektroniky, od
… více »Linux Foundation zveřejnila Výroční zprávu za rok 2025 (pdf). Příjmy Linux Foundation byly 311 miliónů dolarů. Výdaje 285 miliónů dolarů. Na podporu linuxového jádra (Linux Kernel Project) šlo 8,4 miliónu dolarů. Linux Foundation podporuje téměř 1 500 open source projektů.
Jean-Baptiste Mardelle se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 25.12.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.
OpenZFS (Wikipedie), tj. implementace souborového systému ZFS pro Linux a FreeBSD, byl vydán ve verzi 2.4.0.
Kriminalisté z NCTEKK společně s českými i zahraničními kolegy objasnili mimořádně rozsáhlou trestnou činnost z oblasti kybernetické kriminality. V rámci operací OCTOPUS a CONNECT ukončili činnost čtyř call center na Ukrajině. V prvním případě se jednalo o podvodné investice, v případě druhém o podvodné telefonáty, při kterých se zločinci vydávali za policisty a pod legendou napadeného bankovního účtu okrádali své oběti o vysoké finanční částky.
Na lepší pokrytí mobilním signálem a dostupnější mobilní internet se mohou těšit cestující v Pendolinech, railjetech a InterPanterech Českých drah. Konsorcium firem ČD - Telematika a.s. a Kontron Transportation s.r.o. dokončilo instalaci 5G opakovačů mobilního signálu do jednotek Pendolino a InterPanter. Tento krok navazuje na zavedení této technologie v jednotkách Railjet z letošního jara.
Rozšíření webového prohlížeče Urban VPN Proxy a další rozšíření od stejného vydavatele (např. 1ClickVPN Proxy, Urban Browser Guard či Urban Ad Blocker) od července 2025 skrytě zachytávají a odesílají celé konverzace uživatelů s AI nástroji (včetně ChatGPT, Claude, Gemini, Copilot aj.), a to nezávisle na tom, zda je VPN aktivní. Sběr probíhá bez možnosti jej uživatelsky vypnout a zahrnuje plný obsah dotazů a odpovědí, metadata relací i
… více »QStudio, tj. nástroj pro práci s SQL podporující více než 30 databází (MySQL, PostgreSQL, DuckDB, QuestDB, kdb+, …), se stal s vydáním verze 5.0 open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí Apache 2.0.
Byla vydána nová verze 259 správce systému a služeb systemd (Wikipedie, GitHub).
Cloudflare Radar poskytuje aktuální informace o globálním internetovém provozu, útocích nebo trendech. Publikován byl celkový přehled za rok 2025. Globální internetový provoz vzrostl v roce 2025 o 19 %.
public View getView(int position, View convertView, ViewGroup parent) {
View vi = convertView;
ViewHolder holder = new ViewHolder();
if (convertView == null) { //need to be fixed
if (data[position][4] != "") {
vi = inflater.inflate(R.layout.processed_rows, null);
holder.tvCode = (TextView) vi.findViewById(R.id.prCode);
holder.tvDesc = (TextView) vi.findViewById(R.id.prDesc);
holder.tvCurrloc = (TextView) vi.findViewById(R.id.prCurrLoc);
holder.tvDestination = (TextView) vi.findViewById(R.id.prTargetLoc);
} else {
vi = inflater.inflate(R.layout.rows, null);
holder.tvCode = (TextView) vi.findViewById(R.id.rCode);
holder.tvDesc = (TextView) vi.findViewById(R.id.rDesc);
holder.tvCurrloc = (TextView) vi.findViewById(R.id.rCurrLoc);
holder.tvDestination = (TextView) vi.findViewById(R.id.rTargetLoc);
}
.......
Toto ovšem funguje pouze, pokud position souhlasí s indexem v poli dat. Jakmile začnu scrolovat, vzniká zmatek v layoutech řádků (jsou přiřazeny špatně).
Mohl by někdo poradit, jak zajistit, aby se layouty přiřazovaly správně i během scrollování?
getView přepínat jejich viditelnost. Ale v tomto případě mi přijde, že samotný přístup, že máte dva různé layouty pro velmi podobná data, je chybně navržený.
are data changed due scrolling?
try:
public View getView(int position, View convertView, ViewGroup parent) {
View vi = convertView;
ViewHolder holder = (vi == null) ? null : (ViewHolder) vi.getTag();
if (holder == null) {
//todo move to viewholder constructor
vi = inflater.inflate(((data[position][4] != "")
? R.layout.processed_rows
: R.layout.rows
), null);
// holder constructor can have parameters,
// example: new ViewHolder(inflater, vi, data[position])
holder = new ViewHolder();
//todo move to viewholder constructor
vi.setTag(holder);
// todo this can be in holder too
holder.tvCode = (TextView) vi.findViewById(R.id.prCode);
holder.tvDesc = (TextView) vi.findViewById(R.id.prDesc);
holder.tvCurrloc = (TextView) vi.findViewById(R.id.prCurrLoc);
holder.tvDestination = (TextView) vi.findViewById(R.id.prTargetLoc);
}
// todo: holder function to set data
holder.setData(data[position]);
return vi;
}
Tiskni
Sdílej: