Byl vydán Debian 13.7, tj. sedmá opravná verze Debianu 13 s kódovým názvem Trixie. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Jiří Eischmann se v příspěvku Fiasko jménem W Social na svém blogu věnuje evropské sociální síti W: "W Social je příkladem toho, že se problémy sociální sítí nedají řešit od exekutivního stolu. Když na začátku tohoto roku v Davosu oznámili vznik nové sociální sítě W Social, politici se mohli přetrhnout ve chvalozpěvech. Konečně evropská sociální síť a ještě s ověřením identity. … Jak se ukázalo, když v Davosu W Social oznamovali, neměli kromě
… více »Výrobce hardwarových kryptoměnových peněženek Trezor upozorňuje na bezpečnostní incident u společnosti Brevo, kterou využívá k odesílání newsletterů. Útočník na e-mailové adresy odeslal phishingový e-mail.
Clement "Clem" Lefebvre publikoval souhrn dění v Linux Mintu za srpen 2026. Aplikace XApp mají vlastní webovou stránku xapp-project.org. Představena byl čtečka EPUB s názvem Xepub a kalendář Clockenstein.
Byla vydána nová verze 3.2.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
Bylo vydáno Ubuntu 24.04.5 LTS, tj. páté opravné vydání Ubuntu 24.04 LTS s kódovým názvem Noble Numbat. Přehled novinek a oprav na poznámkách k vydání.
Švýcarsko testuje přechod z Microsoft 365 na FOSS, konkrétně balík openDesk (Wikipedie) od německé státní společnosti ZenDiS (Wikipedie), s cílem posílit digitální suverenitu.
V italském městě Pordenone probíhá LibreOffice Conference 2026. Zúčastnit se lze i online.
Svobodný (GPLv3) šachový engine Stockfish (Wikipedie) byl vydán ve verzi 19 (𝕏). Přehled novinek v příspěvku na blogu. Stockfish 19 je o 44 Elo silnější než Stockfish 18.
Byla vydána nová verze 1.13.0 dynamického programovacího jazyka Julia (Wikipedie) určeného zejména pro vědecké výpočty. Přehled novinek v příspěvku na blogu a v poznámkách k vydání. Aktualizována byla také dokumentace.
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: