Hope these timecodes will help someone 😌 1:30 What will we cover 1:44 What is Jetpack Compose 3:00 First app 7:00 Component Modifiers 12:30 Position and layouts 20:17 Images 22:15 Conditional statements 24:02 Lists - LazyRow and LazyColumn 27:35 State 33:15 State - remember function 35:50 Example: textfield, button and a list 37:05 Text fields
@bharatpanjwani8518 Жыл бұрын
Hey Man, You doing a great job by providing these aesthetic tutorials free of cost, keep up the good work!
@PhilippLackner Жыл бұрын
Glad you like them!
@ralphm.881 Жыл бұрын
This is exactly what I needed, thank you! Returning to Android development after not doing it for a few years, I was like, "What the heck is this Composable stuff?!"
@udaysharma5228 Жыл бұрын
To the point and no nonsense! I will keep this in my favourite list to revise the course when ever I need. Thank you Philipp!
@nero1375 Жыл бұрын
Composable is very easy to understand if someone already had played with Dart/Flutter. Thanks for this Crash course!
@seifenspender4 ай бұрын
It also feels almost identical to SwiftUI, but with a few differences in design choices here and there
@str8busta Жыл бұрын
Philipp, just wanna say big big thanks for your contributions you are really making a big difference in people's lives and for android development in general. I finally got an android job a month ago and your videos helped me big time through my journey. I am currently refactoring code with bad practices and your big focus on patterns and good code is making a difference even here in Sweden. Next I wanted to learn jetpack compose and boom, you come with an awesomely packaged video. Thanks again man and looking forward to more content.
@MrBottleNeck3 ай бұрын
if any1 hated writing "modifier = Modifier" as much as I did; (or something else I guess) Go to file->settings->Live Templates and press the "+" then put your preferred abbreviation, in my case "mod" and to Template text write "modifier = Modifier". Now, whenever you write mod and then press tab it autocompletes
@ManishKumar-qd6plАй бұрын
ThankYou :) i also hated writing this thing
@JIUHKK-r6g Жыл бұрын
Man, you've just inspired one more person to get back to his projects. I mean its illegal for recycler view to be so simple. You've got a talent to teach things.
@hassanbarre957210 ай бұрын
was l am annoyed
@kelvinthuranira83302 ай бұрын
😅 I Did it in java and XML. It's painful
@lakshmianjan74243 ай бұрын
Just brilliant.. Excellent Phillip..I have been using Android XML files all these years.. U explained the basics of Jetpack Compose so well that makes u feel that it's easy, interesting and learnable . Thanks.
@daffanashwanpramono4149 Жыл бұрын
My senior recommends your channel for Compose tutorial, and this is just so easy to understand. Much thanks for the tutorial :D
@prasadsawant9122 Жыл бұрын
Best android introduction, straight to point and gives you idea about how things work ui wise , how ui renders , kind of give beginners like me a starting point to explore. Just want to say thank you very much man, and really appreciate all of your efforts.
@Kaif_Ali_830210 ай бұрын
Using jetpack after a long time, needed the revision. Your video was a great help as it covers most of the points without wasting any time.
@Narazgul Жыл бұрын
Hey Philipp, ich hab bei dir häufig das Gefühl, dass du genau das Video machst, was ich in diesem Moment brauche. Nicht nur hier, sondern auch in vielen anderen Fällen in der Vergangenheit. Auch deine Shorts sind fast immer hilfreich! Vielen Dank für deinen absoluten top content!
@PhilippLackner Жыл бұрын
Danke dir, das freut mich!🙌🙏
@Rajmanov Жыл бұрын
Thank you man, you make this community great!
@David-zb8br Жыл бұрын
Man, i wish this type of vid was abailable on yt when i was just starting, this will be very helpful to new compose learners. Great content as always philipp
@volkovolko Жыл бұрын
For those who have issues with the newer versions, I found the issue (you need to remove the .fillMaxSize() of the Row and add it to the LazyColumn) : here is a repaired script : package com.example.myapplication import android.os.Bundle import android.util.Log import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.Image import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer import androidx.compose.foundation.layout.fillMaxHeight import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.LazyRow import androidx.compose.foundation.lazy.items import androidx.compose.foundation.text.BasicText import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Add import androidx.compose.material3.Button import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme import androidx.compose.material3.OutlinedTextField import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Outline import androidx.compose.ui.res.painterResource import androidx.compose.ui.text.TextStyle import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.TextUnit import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import com.example.myapplication.ui.theme.MyApplicationTheme class MainActivity : ComponentActivity() { @OptIn(ExperimentalMaterial3Api::class) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { MyApplicationTheme { var name by remember { mutableStateOf("") } var names by remember { mutableStateOf(listOf()) } Column( modifier = Modifier.fillMaxSize() ) { Row ( ){ OutlinedTextField( value = name, onValueChange = {text -> name = text}, modifier = Modifier.weight(1f) ) Spacer(modifier = Modifier.width(16.dp)) Button(onClick = { if(name.isNotBlank()){ names += name } }) { Text(text = "Add") Icon(imageVector = Icons.Default.Add, contentDescription = "") } } LazyColumn(modifier = Modifier.fillMaxSize()){ items(names){currentName-> Log.d("COMPOSE", "This get rendered $currentName") Text( text = currentName, modifier = Modifier.fillMaxSize().padding(16.dp) ) } } } } } } }
@goblin69_420 Жыл бұрын
This new UI way seemed a little mixture of flutter and react and I love this
@MaxProgramming Жыл бұрын
This is exactly what I needed in native Android development! The syntax is so cool and easy to understand if you are familiar with React or Flutter. Much better than XML of course! I think I might go all in native if I continue to use Jetpack Compose! Thanks a lot Phillip!
@yassine-sa Жыл бұрын
yes it's a lot like flutter, which is one of its big advantages, it's just so simple to create layouts this way
@Imperial_Dynamics Жыл бұрын
hi from Greece. You were the one who introduced me to xml and now you are the one who introduced me to compose. You explain things very well and the pace is just right. THANK YOU.
@LucasHedegaardGertsen Жыл бұрын
Thank you so much for making this great tutorial!!! i have been wanting to create apps for so long and i never really liked the way designing UI worked, and i LOVE this way using code to make UI!
@ChristianMielke9 ай бұрын
i never worked with Compose, and just a little bit with XML. Also i started to learn Kotlin. And as an Professional Java Developer i can say: This Video is Awesom, with Compose App-Development feels easier like never before! Also i like that you share your knowlege with us! Good Job!
@SouthernPole Жыл бұрын
I am waiting for tutorials like this, thanks 👍
@СергейБезногов-т6у Жыл бұрын
It's your the best video!!! And it's the best video in the history of online programming teaching!!!
@PhilippLackner Жыл бұрын
Haha thank you mate!🙌🙌
@stockiber7656 Жыл бұрын
Hey, Philipp. Danke dir für all deine tollen Videos!! Du erklärst super gut und hilfst mir so sehr in verschiedene Topics einzusteigen und zu wissen, was man alles können sollte, um eine gute Android Developerin zu werden.
@PhilippLackner Жыл бұрын
Danke das freut mich 🙌
@GTA_33 Жыл бұрын
I am from india and i loved ur content i started ur playlist from basics of kotlin... And ur way of explaning concept is ossum . thanks for this ossum content .....🔥🔥🔥🔥
@manjaro675 Жыл бұрын
Great timing! Am actually converting an existing project from flutter to native for better performance and control of device sensors.
@hossamqandel5303 Жыл бұрын
No matter how much I thank you, I will never give you the thanks you really deserve, Philip ♥️ You are truly a person of great value to the Android and mobile developer community in general I wish you all the best and give us more ♥️🙏🇪🇬
@deathrain18324 ай бұрын
as new learner I can say it's one of the best video I found on youtube, thanks philipp
@Remirured4 ай бұрын
thank you for this guide. just got into kmp and was watching your video, when you you mentioned that you also have compose guides that one should watch so i did now. I am currently searching for a software dev job as i freshly graduated. But it takes so much time that i though fk it, i ll develope an app and publish it and your videos are a great entry
@fuzzy-0211 ай бұрын
This tutorial was just great to get me up and going. I learned Java and XML in my uni course but I thought it would be better to switch to Kotlin and JetCompose. Thanks a lot for this man! Its much better than the tutorials on the android website
@begmyratmammedov9357 Жыл бұрын
Thank you Philipp, this is so amazing tutorial with well summarized version of jetpack compose course. Great Work!!!
@jananipandian15206 күн бұрын
Awesome Video to get started with Composables, Thanks Philipp!
@Talhaguy18 күн бұрын
Fantastic overview! I'm coming from a web dev background and it's interesting to see the parallels to some front end frameworks.
@Thaizer Жыл бұрын
Hi, I'm a c# programmer (Xamarin) Was curious about Android programming with Kotlin. Thanks for your good videos they help me a lot.
@wilsonpedrotamegajunior105311 ай бұрын
This video is very, very clear and easy to follow and understand. I'm very, very thankful for you, it makes me to start get the idea of jetpack compose, and for sure this is the future of Android UI Design
@LuckyFortunes-b3q2 ай бұрын
I now mix Kotlin and Java. I call it the Goblin syntax.
@haxificality Жыл бұрын
Thank you for this! I totally understand how advantageous Compose is compared to the old style. Now it's Compose for me all the way.
@scottbiggs8894 Жыл бұрын
Hands down the best instruction I've seen on jetpack compose. And I've seen tons of vids and scads of websites. Thank you!
@eazyfrizzy7983 Жыл бұрын
From watching this video i learned a lot about compose. Thanks keep it up
@TownrideNigeriaАй бұрын
This is a very amazing course that has really augmented my capacity
@xFaisalM27 күн бұрын
I appreciate you teaching me about modifiers and their uses. One video is excellent, but it will be even better if you divide it up into smaller ones where the topic explains the material.
@OCEH6 Жыл бұрын
Awesome! So cool! You and Compose is Amazing!
@serlok4688 Жыл бұрын
I've just started your compose play list. it's good you uploaded it thanks
@DyotakT Жыл бұрын
Hey Philip, Amazing job! This is so much better than the official videos provided by Google. Thank you! Keep it up. :D
@PhilippLackner Жыл бұрын
Thank you!
@valeryegorov2616 Жыл бұрын
The Best Android Teacher!
@prudhvimadasu6 ай бұрын
I can't thank you enough, this is a great crash course for Jetpack compose
@vibhuvineet Жыл бұрын
Certainly found it helpful, very clear explanation. A huge thumbsup for the content.
@henriquepetters Жыл бұрын
Do more compose content, i see a lot of devs struggling with it. And i can totally relate, i'm glad i dived head first when it came out.
@codewithsebastian10 ай бұрын
I am Learning Compose, and Unlike many other ways of learning I have used before, I find mixing the Docs and Your tutorials Yours only, to be working. I dont want to go into the tutorial loop just yet, maybe later on when I get most of the basic conepts and can now make the skills as diverse as they can be
@mihaes7172 Жыл бұрын
Thanks for this video, much valuable as I am entering this Kotlin - jetpack world from Php
@faustipez6 ай бұрын
Thank you so much, it really helped me to understand the basics of Jetpack Compose and see the benefits of using it for my current project!
@pengottv589 Жыл бұрын
Insane Video, Thank you very much for the introduction to Jetpack Compose! Your free content helped me so much! Thanks for everything Philipp.
@Rundik4 ай бұрын
The way it works it looks more like imperative than declarative. In declarative style the order usually doesn't matter, and here it does
@brand-konto93772 ай бұрын
Adding a Column puts the text into separate rows. Good Job Google. Very intuitive :D
@PhilippLackner2 ай бұрын
The elements are arranged in a column though. Calling this a row I'd consider the most unintuitive thing ever 😄
@niazsagor3241 Жыл бұрын
Thank you Phillipp for these videos. These are gem.
@flaviocatuara7488 Жыл бұрын
Thank you as always Philipp Great job. Very useful
@Terik175 ай бұрын
clear and concise intro to jetpack compose, thank you for sharing :)
@kyeiiih4422 Жыл бұрын
Amazing Content Phillip.
@andreymerc13 ай бұрын
Thanks for really well explaining the topic in simple terms!
@manishprajapati8544 Жыл бұрын
Amazing tutorial Bro, This introduction was really simple and helpful with clarity Thank you 🙏🙏
@AfzalAli-n6d Жыл бұрын
One of the best tutorials for compose beginners
@andersmembers1309 Жыл бұрын
stumbled onto this, but it's really great!
@mergenstudios87796 ай бұрын
This video acctually did teach me a lot, thank you!
@jayeshkarale9118 Жыл бұрын
i'm not watched fully video but yes i'm 100% sure this is best content. thanks in advance ♥
@PhilippLackner Жыл бұрын
Thank you!!
@alireza-qy8wh3 ай бұрын
Thank you Philip for your tutorial, it was very helpful.
@ldxyz-s1e Жыл бұрын
46:38 What if "names" is some array inside your ViewModel class. This cannot be mutableStateOf(), as VM doesn't know anything about UI. How to notify to update LazyList?
@ldxyz-s1e Жыл бұрын
kzbin.info/www/bejne/imnZcqOPf9GKbtE
@mikethemonsta15 Жыл бұрын
Excellent! Thank you so much this really helped me
@ricnyc275912 күн бұрын
I thought Jetpack needed the composable functions. They were deleted. 28:58 Can anyone explain why all the code was placed in the "setContent"?
@MRBala-xx5si Жыл бұрын
Thanks Philipp . You gave a better start to me.
@Khush-f6s2 ай бұрын
Thanks for this video .I was able to understand it very well .
@nickb71708 ай бұрын
hey i tried to follow the turorial but when I typed in the same thing 38:22 it only gives out the error: Type 'MutableState' has no method 'setValue(Nothing?, KProperty, String)' and thus it cannot serve as a delegate for var (read-write property) Is there a fix? how can i fix it?
@Goose____7 ай бұрын
Glad i decided to check this video out before trying to learn with XML,
@Mr.YeastMK Жыл бұрын
Thank you, that helped me to learn the basics
@akashmadanu3994 Жыл бұрын
Phillipp, Thanks for your excellent content, if you make an entire Android course and Upload it to Udemy/KZbin, which is ok if it is paid course which includes all basics and some projects that help many Android (jetpack) learners, you have a 10 week course on your official site. Still, as a student, that is not affordable, hope you keep this in your mind and make an excellent android course that can be enrolled by even students. Thank you again for your great content; I love you so much.
@nikinsk Жыл бұрын
Nice and Epic video for Jetpack compose learners
@Hobynist Жыл бұрын
Came here to find out what is jetpack compose. And got the answer, thanks!
@williamgiraldo996 Жыл бұрын
Thank you, this is great to start on jetpack compose
@ndanielamaha5618 Жыл бұрын
Thank you bro, very succinct and sweet summary
@masterwayne97903 ай бұрын
Easy to understand from flutter framework. Thanks a lot.
@malikkahfi2534 Жыл бұрын
Love this 😍
@tranminhviet64162 ай бұрын
love this video so much!!!
@ezekielwachira1691 Жыл бұрын
Always top content 💯
@HierKommtAlex311 ай бұрын
Great video. I love this declarative way of UI programming. I did a lot QML before but now I have to switch to Kotlin and was really afraid of diving into XML^^ In your video there is just one point that I do not understand: why is it necessary to assign the new text value to the member text value inside the onValueChanged ? Actually I would assume that this slot is called when changing the member. At least in QML it is how it works.
@dabert59728 ай бұрын
PHILLIPP YOU ARE THE MAN
@jordyetienne81096 ай бұрын
You got a new follower!
@rizwansworld7 ай бұрын
Cool crash course man. No BS. Just to the point.
@nazimgallo91166 ай бұрын
Thank you for the video, much appreciated!!!
@potavios16 күн бұрын
JC crash course is done! Let's come back to the Master Class now!
@Youtube-Mark8 ай бұрын
recompose-able is explained flawlessly, i am new to android, i am afraid of getting a start with android, and this lecture gave more insight into the Jetpack compose over xml views and to get started with android app development with ease and confidence. Lazy rendering is explained perfectly, earlier when i am using neovim editor i was getting confused about the buzz word lazy loading..hear you have explained this concept so simply...Thank you very much Philipp.
@irhasdev Жыл бұрын
please make videos about jetpack compose more
@vismal2007 Жыл бұрын
Thanks man, very good content!
@ruslanpodurets6289 Жыл бұрын
Thank you so much, great examples!!
@kirgo4720z Жыл бұрын
Thanks a lot for this video! Its brilliant! So understandable!
@MaximusMcCullough Жыл бұрын
Totally awesome! Thank you for this information.
@typosbro_ Жыл бұрын
Compose feels like Flutter which was inspired by React Native which a variation of React which was created a decade ago. I'm new to Android dev btw😇
@kamal-i7d1m Жыл бұрын
20:18 Images 24:00 list
@lvterry11 ай бұрын
Thanks for the course!
@pikazap6672 Жыл бұрын
Thank you Philipp!! :3
@Dibyendu.M Жыл бұрын
Thank You, Philipp!
@oxygenconsumingindividual Жыл бұрын
So, this is something like Flutter for Kotlin no? Or something really similar to that