Hirdetés
- Munkához is jó lehet a OneXPlayer gaming tabletje
- AMD Strix Haloval érkezik a OneXPlayer erőtől duzzadó mini PC-je
- Félő, hogy az okosszemüveg a szexuális zaklatók játékszere lesz
- Kompakt TUF Gaming alaplappal bővült az ASUS AMD-s palettája
- Nemcsak az ellenfél, a tévéd is kifekszik a Resident Evil fegyvereitől
Új hozzászólás Aktív témák
-
heihachi
addikt
Sziasztok!
Szeretnék egy parallax scroll effektet létrehozni, ahol a háttér, mondjuk egy kép más sebességgel gördül, mint az előtte lévő szöveg. Ezzel meg is volnék, ezt úgy értem el, hogy a layoutban egy framelayout van, azon belül két saját, scrollview-ból származtatott saját view.
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/null_dp"
android:paddingLeft="@dimen/null_dp"
android:paddingRight="@dimen/null_dp"
android:paddingTop="@dimen/null_dp"
tools:context="com.example.simpletestproject.ParaScroll" >
<com.example.simpletestproject.MyScrollView
android:id="@+id/background_scroll"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:scrollbars="none" >
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:scaleType="center"
android:src="@drawable/kek_atmenet" />
</com.example.simpletestproject.MyScrollView>
<com.example.simpletestproject.MyScrollView
android:id="@+id/foreground_scroll"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:overScrollMode="always" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/lorem_ipsum"
android:textColor="@color/white" />
</com.example.simpletestproject.MyScrollView>
</FrameLayout>A scrollview leszármazottja sincs túlbonyolítva:
package com.example.simpletestproject;
import android.content.Context;
import android.graphics.Matrix;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.widget.ScrollView;
public class MyScrollView extends ScrollView {
public MyScrollView synchronizedScrollView;
public String name = "default";
public MyScrollView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
public MyScrollView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}
public MyScrollView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
// TODO Auto-generated constructor stub
}
public MyScrollView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
// TODO Auto-generated constructor stub
}
public boolean onTouchEvent(MotionEvent event) {
boolean synchronizedScrollViewReturn = true;
boolean scrollViewReturn = super.onTouchEvent(event);
if (synchronizedScrollView != null) {
Matrix matrix = new Matrix();
matrix.setScale(0.5f, 0.5f);
event.transform(matrix);
synchronizedScrollViewReturn = synchronizedScrollView.onTouchEvent(event);
}
return synchronizedScrollViewReturn && scrollViewReturn;
}
}A synchronizedScrollView a háttér scrollview, megkapja az is az érintés információkat, és mozog az is.
Ez tök jól működik, a háttér más sebességgel szkrollozódik, mint az előtér, csak a gondom az, hogy jó lenne ezeket egymáshoz igazítani, hogy egyszerre érjenek a tetejére és az aljára. Nem lenne ez bonyolult, mert a méretarányok alapján a mátrixot amit skálázásra használok simán be lehetne lőni. Csakhogy képtelen vagyok megmérni a view-k méretét, akármit próbálok baromságok jönnek vissza. Az 1600 pixeles háttérre 2133, a rohadtul hosszú szövegre, ami vagy 10 képernyő meg 38 pl, és képtelen vagyok felfogni, hogy hogyan kellene megoldani.
Volna valami ötletetek?
Új hozzászólás Aktív témák
- Nagyon olcsón! LG Ultrawide Cruved LED 34"VA 4k usb-c PD 65w Gari 2027.04.29-ig Olvass leírást!
- Eladó Onkyo TX-NR7100 házimozi erősítő hibátlan állapot, gyári dobozzal
- Klipsch R-120SW aktív mélynyomó eladó, hibátlan
- KLIPSCH R-600F 5.0 hangfalszett
- Micron 5200 ECO 480 GB 2,5 SATA Enterprise/Datacenter Server SSD
- HP ProBook 650 G5 - i5 8265U, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- 27% - ASUS VivoBook S15 OLED! Snapdragon X Elite / 16GB DDR5 / 1TB NVMe Notebook!
- GYÖNYÖRŰ iPhone 13 128GB Red-1 ÉV GARANCIA - Kártyafüggetlen, MS4373, 100% Akkumulátor
- 27% - MOMODS 15.6" 1080P FHD IPS FreeSync Portable Hordozható monitor!
- AKCIÓ! AMD Ryzen 9 5900X 12mag 24szál processzor garanciával hibátlan működéssel
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

