#TextView
Explore tagged Tumblr posts
Photo
Hey! I was able to find to more pics from the Esquire shoot. I was able to access these specific pics without buying the magazine, so I assume I/we won’t be breaking any laws by posting them?? https://www.pressreader.com/germany/esquire-germany-9BRe/20240314/page/124/textview (2/2)
thank you! it’s gorgeous <3
9 notes
·
View notes
Text
2 notes
·
View notes
Text
CS 442: Mobile Applications Development Assignment 5 – Know Your Government (300 pts)
Uses: Location Services, Internet, Google APIs, Images, Picasso Library, Implicit Intents, TextView Links App Highlights: • This app will acquire and display an interactive list of political officials that represent the current location (or any specified location) at each level of government. • Android location services will be used to determine the user’s location. • The Google Civic Information…
0 notes
Text
How to Build a Basic Stopwatch App in Android Studio
In this tutorial, we’ll create a simple Stopwatch Android App. This app will display the elapsed time and allow the user to Start, Stop, and Reset the stopwatch. App UI Components The stopwatch interface will include: TextView: Displays the elapsed time in the format `HH:MM:SS`. Start Button: Begins the stopwatch. Stop Button: Pauses the stopwatch. Reset Button: Resets the time to…
0 notes
Text
One of the most utilized UI-elements in Android apps is ListViews. Whether you are displaying a list of songs in an album, ingredients in a recipe, or search results, almost every Android app needs to render lists. Many newer developers are lulled into a false sense of security because it is pretty easy to get started with ListViews.However, they will eventually learn the hard way that as ListView datasets grow, or their data becomes increasingly complicated to fetch and render, ListViews can be quite tricky to master. This article is meant to help Android developers, who have come or will soon come to this realization, and will include several tips to help solve common ListView pitfalls.Checkout more android tutorials at this page : list of best android tutorials.Understanding View LifecyclesListViews often contain more items than can be displayed on a screen at one time. Although the logic of rendering each individual item in the list might be trivial, iterating through all of them is overkill and could lead to serious memory issues. For this reason, ListViews only render what is on screen and slightly off-screen in both directions.Additionally, properly optimized ListViews can reuse effort spent rendering a previously visible ListView item when rendering a newly visible one. This process is known as view recycling. To utilize it, all you need to do is determine if your new view is actually new or if it is being recycled. As an example, check out the null check in the following code snippet:@Overridepublic View getView(int pos, View recycledView, ViewGroup parent) if (recycledView == null) recycledView = View.inflate(getActivity(), R.layout.item, parent);...return recycledView;If you make the mistake of not including this null check and inflate a new view each and every time, your app will have rogue views taking up vital memory. If a user scrolls this list up-and-down enough, it is very likely your app will eventually crash with an out of memory exception.Cache Your View Data with the View Holder PatternAnother issue that plagues larger ListViews is the potential for sluggish scrolling when your ListView items take too long to retrieve and/or render their data. Common issues here are items that require non-trivial calculations or database queries to populate. A great approach to solve problems like this is the View Holder pattern. The basic idea is to create a class that can be used to cache the data you have already retrieved or calculated for any future renderings. The following class is a very simplified example of this:public class MyViewHolder TextView difficultToCalculateValue;...Now, when it comes time to render a ListView item, we start by populating this class. The following getView function provides an example of this:@Overridepublic View getView(int pos, View recycledView, ViewGroup parent) MyViewHolder myViewHolder;if (recycledView == null) recycledView = View.inflate(getActivity(), R.layout.item, parent);myViewHolder = new MyViewHolder();myViewHolder.difficultToCalculateValue = convertView.findViewById(R.id.text_id);...recycledView.setTag(myViewHolder); else myViewHolder = (MyViewHolder)convertView.getTag();myViewHolder.difficultToCalculateValue.setText("This took forever to calculate.");...return recycledView;Learning when to use ListView.invalidateViews() and Adapter.notifyDatasetChanged()invalidatedViews() and notifyDatasetChanged() are two of the main ways to inform your ListView that its child views need to be updated. Some common scenarios of this include handling the removal or addition of a list item, bulk updating the style of list items, or updating the value displayed on several list items. The basic difference is that invalidateViews() only looks at views currently on the screen and does not take into account underlying changes to the dataset. So, it is not what you need when adding or removing items from the underlying dataset. notifyDatasetChanged() informs your ListView that it needs to redraw and take into account the updated dataset.
Properly Handing Asynchronous TasksAs any Android developer knows, accessing a database or waiting for an API response takes time and should be handled off the main UI-thread. For this reason, neither of these actions should be performed inside your getView functions. A simple solution is to load all of your data into memory prior to rendering your list. If that is not possible, you can enlist the help of AsyncTasks.The following code snippet shows one example of this. Please note that inline AsyncTasks are typically a bad idea, but one is shown here for the simplicity of the illustration:@Overridepublic View getView(int pos, View recycledView, ViewGroup parent) ...new AsyncTask() @Overridepublic Bitmap doInBackground(Void... params) return BitmapFactory.decodeFile(...);@Overridepublic void onPostExecute(Bitmap bitmap) imageView.setBitmap(bitmap);.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);return recycledView;It is very likely that your specific implementation will be more involved than this example, but this should help you get started.Also, keep in mind that you need to ensure your solution can handle users flinging through your ListView. If you spawn a new thread for each item in your list and never cancel them, your app will run into several issues. To handle this potential problem, you need to keep track of your spawned AsyncTasks and call cancel() on any that are no longer needed. This is a step in the right direction, but it is important to know that cancel simply prevents your AsyncTasks’ onPostExecute from firing; it does not stop the thread itself. If you run into issues due to having too many threads, you can consider conditionally spawning threads based on the speed a user is scrolling or some other mechanism that works for your specific list. Ultimately, this can get pretty complicated. If at all possible, try to find a way to not have to spawn threads inside your getViews.ConclusionEvery Android developer will eventually have to create a ListView. Most are fairly simple, but as your lists’ complexity grows, so must your understanding of ListViews. Sluggish ListViews can severely harm your user experience and implementing these tips can go a long way to alleviate these issues. One final thing, it is important to consider all available tools before beginning to code. If a ListView is not the proper tool for the job, optimizing can only go so far. If you are about to add a ListView to your app, make sure you consider if something else (including the powerful RecyclerView) could be a better fit.Paul is a Developer Advocate at [The BHW Group]. He works with clients on custom Android apps and web-based solutions. He frequently writes about mobile development, technology, and business-related topics.
0 notes
Text
Apple Intelligence: The Core Innovation in iOS 18.1

Apple's latest update, iOS 18.1, introduces a groundbreaking feature, Apple Intelligence, which integrates cutting-edge generative AI directly into the heart of Apple devices. From iPhones to Macs, this powerful personal intelligence system is designed to revolutionize how users communicate, work, and express themselves, while also offering seamless integration for app developers. Core Features of Apple Intelligence - Writing Tools: A System-Wide Language Assistant Writing Tools bring generative AI capabilities to all Apple devices, enabling users to rewrite, proofread, and summarize text effortlessly. These tools are integrated into standard UI frameworks, so text fields in apps automatically support this feature. Developers can take advantage of the TextView delegate API to customize how their apps respond when Writing Tools are active, such as temporarily pausing syncing to prevent conflicts during text processing. Example Use Case: In productivity apps like Notes or Mail, Writing Tools can refine email drafts or summarize meeting notes for users. - Image Playground: Creative Visual Content at Your Fingertips The Image Playground empowers users to create playful and context-aware images directly within apps like Messages, Keynote, and Pages. Leveraging on-device processing, this feature ensures privacy while eliminating the need for third-party model hosting. Developer Advantage: With the Image Playground API, developers can embed this functionality into their apps, giving users a native, delightful image creation experience. - Genmoji: Redefining Digital Expression Genmoji transforms communication by letting users create customized emojis tailored to any moment. Represented as inline images rather than text, Genmoji integrates smoothly with Apple’s AttributedString for enhanced rich text rendering. Integration Simplicity: Apps utilizing standard UI frameworks automatically support Genmoji, and other implementations can rely on AttributedString to include this feature. - Enhanced Siri with App Intents Siri becomes smarter and more intuitive with Apple Intelligence. Developers can integrate their app’s functionality into Siri using pre-defined and trained App Intents. This makes app features more accessible in Spotlight, Shortcuts, and Control Center, while providing enhanced conversational abilities through SiriKit with minimal developer effort. User Benefits: Siri can now perform actions within apps more naturally, like creating a playlist in a music app or fetching specific data from a fitness tracker. Opportunities for Developers With Apple Intelligence, developers can: - Seamlessly incorporate advanced generative AI features into their apps. - Leverage APIs to customize behavior and create unique user experiences. - Reduce overhead by relying on Apple’s on-device AI models, ensuring privacy and performance. Privacy and Performance All Apple Intelligence features are processed entirely on-device, aligning with Apple’s commitment to user privacy. This architecture not only protects sensitive user data but also delivers real-time responsiveness without dependence on cloud connectivity. The Future of AI on Apple Devices Apple Intelligence is more than a feature—it’s a paradigm shift. By embedding AI directly into the operating system, Apple empowers users and developers to explore unprecedented creative, productive, and communicative possibilities. For developers, this marks a new era of AI-driven innovation that’s as accessible as it is powerful. Explore Apple Intelligence in iOS 18.1 and redefine what’s possible with generative AI at your fingertips. Read the full article
#AIintegration#AppIntents#Appledevelopertools#AppleIntelligence#generativeAI#Genmoji#ImagePlayground#iOS18.1#iPadOSupdate#iPhoneupdate#MacOSintegration#on-deviceprocessing#Siriimprovements#SiriKitenhancements#TextViewAPI#WritingTools
0 notes
Text
8/30/24 - Screaming Calendar Accomplishment: Period Between mechanism works
Conditions: Date boxes must be TextViews, Dates must be LocalDates, *have not* figured out parsing w/ DateTime Formatter yet.
1 note
·
View note
Text
ShoAllData java .class
public class ShoAllData extends AppCompatActivity {
ListView listView; TextView tvTitle; DataBaseHelper dbhelper;
ArrayList<HashMap<String,String>> arrayList; HashMap<String,String> hashMap;
public static boolean Expence=true;
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sho_all_data); listView=findViewById(R.id.listView); tvTitle=findViewById(R.id.tvtitles); dbhelper=new DataBaseHelper(this);
if (Expence==true)tvTitle.setText(" total expense Data"); else tvTitle.setText(" total Income Data");
lodData();
}//----------------------------------- public void lodData(){ Cursor cursor=null;
if (Expence==true){ cursor=dbhelper.getAllExpense(); }else { cursor=dbhelper.getAllIncom(); }
if (cursor!=null && cursor.getCount()>0){
arrayList=new ArrayList<>();
while (cursor.moveToNext()){ int id=cursor.getInt(0); double amount=cursor.getDouble(1); String reason=cursor.getString(2); double time=cursor.getDouble(3); hashMap=new HashMap<>(); hashMap.put("id",""+id); hashMap.put("amount",""+amount); hashMap.put("reason",""+reason); hashMap.put("time",""+time); arrayList.add(hashMap);
} listView.setAdapter(new Myadepter());
}else { tvTitle.append("\n No Data found");
}
}
public class Myadepter extends BaseAdapter{
@Override public int getCount() { return arrayList.size(); }
@Override public Object getItem(int position) { return null; }
@Override public long getItemId(int position) { return 0; }
@Override public View getView(int position, View convertView, ViewGroup parent) { LayoutInflater inflater=getLayoutInflater(); View myView = inflater.inflate(R.layout.item,parent,false);
TextView tvreason=myView.findViewById(R.id.tvreason); TextView tvExpenses=myView.findViewById(R.id.tvExpenses); TextView delete=myView.findViewById(R.id.delete); ImageView item_image=myView.findViewById(R.id.item_image);
if (Expence==true){ item_image.setImageResource(R.drawable.expense); }else { item_image.setImageResource(R.drawable.income); tvExpenses.setTextColor(Color.parseColor("#009688")); }
hashMap=arrayList.get(position); String id=hashMap.get("id"); String amount=hashMap.get("amount"); String reason=hashMap.get("reason");
tvreason.setText(reason); tvExpenses.setText(amount);
delete.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) {
if (Expence==true){
dbhelper.deleteExpense(id);
}else {
dbhelper.deleteIncome(id); } lodData();
} });
return myView; } }//-----------------------------------
#android#the muppets#hazbin hotel#joker out#pakistan#across the spiderverse#succession#welcome home#wally darling#the owl house#shipon sarker#shipon#sagor sarker#sagor#griseo#trauma#honkai impact#gojo satoru#santrampaljimaharaj#sale#sapphic#saw#fu hua#many hua(s)#shipon2004#android app design#android app development#android application development#android app#android studio
0 notes
Text
App developer for android
Of course, I can help you with my knowledge of Android app development! Developing apps for the Android platform involves several phases from concept to deployment. Here's a general overview to get you started:
Learn programming languages: You will need to know programming languages like Java or Kotlin. Kotlin has become increasingly popular due to its modern features and better integration with Android APIs.
Setup Development Environment by smiligence software services:
Download and install Android Studio, the official integrated development environment (IDE) for Android app development.
Configure the Android SDK (Software Development Kit) and required tools within Android Studio.
Understand Android components:
Activities: Represent a UI screen. Users interact with your app through activities.
Fragments: Modular UI components within an Activity.
Services: Run in the background to perform tasks without a UI.
Broadcast receivers: Respond to system-wide events or app-specific events.
Content Providers: Manage app data and share it with other apps.
UI Design:
Design user interface using XML layout files and Android's UI components like TextViews, Buttons, RecyclerViews etc.
Consider using the Material Design guidelines for a consistent and visually appealing UI.
Logic and functionality:
Implement app functionality using Java/Kotlin.
Handle user interactions, data processing, and integration with APIs.
Testing:
Test your app on emulator or real device.
Write unit tests and instrumentation tests to ensure code quality.
Debugging and Customization:
Use Android Studio's debugging tools to identify and fix problems.
optimize your app
0 notes
Text
Android Training in Chandigarh: Unlock Your Career in Mobile App Development
In today’s digital world, mobile applications have become an integral part of our daily lives. With billions of smartphone users globally, Android stands out as the dominant platform powering over 70% of mobile devices worldwide. This massive reach has created an enormous demand for skilled Android developers who can design, develop, and maintain robust mobile apps.
If you are in Chandigarh or planning to move here, pursuing Android training in Chandigarh is an excellent step toward building a rewarding career in mobile app development. This article explores everything you need to know about Android training in Chandigarh—from why it’s important to what you should look for in a training institute.
Why Choose Android Development?
Android is an open-source platform developed by Google. Its flexibility and wide adoption have made it the preferred choice for developers and businesses alike. Here are some reasons to consider a career in Android development:
Huge Market Demand: With millions of Android apps on the Google Play Store, companies are constantly looking for developers to create innovative applications.
High Salary Prospects: Skilled Android developers are well-compensated due to their specialized knowledge.
Versatility: Android development skills open doors to work in startups, IT companies, freelance projects, and even launch your own apps.
Constant Innovation: Android regularly updates with new features, keeping developers challenged and engaged.
Global Reach: Apps developed on Android reach a worldwide audience, providing a global career scope.
Why Chandigarh for Android Training?
Chandigarh, known as "The City Beautiful," is a growing hub for IT and software development. The city offers numerous benefits for tech learners:
Proximity to IT Companies: Chandigarh and the surrounding tri-city area (Mohali, Panchkula) host many IT firms that regularly hire Android developers.
Educational Infrastructure: The city has excellent institutes offering cutting-edge training programs.
Affordable Cost of Living: Compared to metro cities like Delhi or Bangalore, Chandigarh offers affordable living and training costs.
Supportive Learning Environment: Chandigarh’s student-friendly atmosphere and availability of resources create a positive environment for tech education.
What Does Android Training in Chandigarh Include?
A comprehensive Android training program covers the core concepts and practical skills required to build professional Android applications. Key topics usually include:
1. Java/Kotlin Programming
Basics of Java or Kotlin (Kotlin is now the preferred language recommended by Google)
Object-oriented programming concepts
Exception handling and data structures
2. Android Studio and SDK
Installing and configuring Android Studio (official IDE)
Using Android SDK tools and emulator setup
Project creation and management
3. User Interface Design
Layouts (LinearLayout, RelativeLayout, ConstraintLayout)
Views and widgets (Buttons, TextView, RecyclerView)
Material design principles for creating intuitive UI
4. Activity and Fragment Lifecycle
Understanding the activity lifecycle
Managing fragments for modular UI components
Handling user interactions
5. Data Storage and Management
Shared Preferences
SQLite databases
Room persistence library
Working with JSON and APIs for data exchange
6. Networking and APIs
Connecting apps to RESTful APIs
Parsing JSON/XML data
Using libraries like Retrofit and Volley
7. Advanced Topics
Firebase integration (Authentication, Realtime Database, Cloud Messaging)
Push notifications
Background services and Broadcast receivers
Google Maps integration
Working with sensors and cameras
8. Testing and Debugging
Unit testing Android apps
Debugging tools and best practices
Performance optimization
9. Publishing and Maintenance
Preparing apps for release
Play Store guidelines and submission process
App updates and maintenance strategies
Benefits of Android Training in Chandigarh
Hands-On Learning: Chandigarh’s institutes emphasize project-based learning, allowing students to build real-world applications.
Expert Trainers: Experienced trainers with industry exposure guide students through concepts and practical challenges.
Placement Assistance: Many training centers provide placement support with tie-ups to IT companies in and around Chandigarh.
Certification: Accredited certifications help validate your skills to potential employers.
Networking Opportunities: Training institutes often facilitate interaction with professionals and organize seminars, workshops, and hackathons.
How to Choose the Right Android Training Institute in Chandigarh?
With many options available, choosing the right Android training institute can be overwhelming. Here are some factors to consider:
1. Curriculum Quality
Ensure the syllabus covers the latest Android versions, languages (Kotlin), and includes both basic and advanced topics.
2. Trainer Expertise
Look for trainers who have industry experience and a solid track record of successful student placements.
3. Practical Exposure
Check if the institute offers project-based learning and opportunities to work on live projects.
4. Placement Support
Verify if the institute provides interview preparation, resume building, and job placement assistance.
5. Reviews and Testimonials
Read student feedback and reviews online to gauge the reputation of the training center.
6. Infrastructure and Tools
Modern computer labs with the latest software and high-speed internet are essential for effective learning.
7. Flexibility and Support
Look for flexible batches (weekend/weekday/online), study materials, doubt clearing sessions, and mentorship.
Top Android Training Institutes in Chandigarh
Here are some reputed names known for Android training (you may want to verify current details):
Tech Shiksha Chandigarh: Known for in-depth Android courses and placement support.
SEED Infotech: Offers industry-oriented training with hands-on projects.
APTRON Solutions: Good for comprehensive mobile app development training.
CBitss Technologies: Experienced faculty and live project experience.
Nettechnocrats: Focuses on practical knowledge with live projects and interview preparation.
Tips to Succeed in Android Training
Practice Regularly: Coding is a skill honed by continuous practice. Build small apps on your own.
Understand Concepts, Don’t Just Memorize: Focus on the ‘why’ behind each Android component and lifecycle.
Explore Official Documentation: Google’s Android developer site is a treasure trove of information.
Stay Updated: Android platform evolves frequently. Keep learning new features and APIs.
Work on Projects: Try building apps that solve real problems or automate tasks.
Join Developer Communities: Participate in forums like Stack Overflow, Reddit Android Dev, and GitHub.
Career Opportunities After Android Training
Completing Android training can open multiple career paths such as:
Android Developer: Design and develop apps for smartphones and tablets.
Mobile UI/UX Designer: Focus on the user experience and interface.
Mobile App Tester: Test apps for functionality and bugs.
Freelancer: Build apps for clients independently.
Entrepreneur: Launch your own startup with innovative Android applications.
Backend Developer: Combine Android skills with backend technologies for full-stack mobile development.
Final Thoughts
Android training in Chandigarh offers a promising gateway to the booming mobile app development industry. With the right training institute, a solid curriculum, and dedicated effort, you can master Android development and secure lucrative job roles in the IT sector.
Whether you are a student, a working professional aiming for a career switch, or a freelancer wanting to sharpen your skills, investing in Android training in Chandigarh is a wise choice. The city’s supportive learning environment, affordable training options, and growing IT market make it an ideal destination for your Android development journey.
Start today, stay curious, and build the apps that shape tomorrow!
0 notes
Photo
Hey! I was able to find to more pics from the Esquire shoot. I was able to access these specific pics without buying the magazine, so I assume I/we won’t be breaking any laws by posting them?? https://www.pressreader.com/germany/esquire-germany-9BRe/20240314/page/124/textview (½)
5 notes
·
View notes
Text
0 notes
Photo

Sul mio Blog nuovo articolo su Android Studio - Inserire una lista in una TextView. Link https://davidetech.blogspot.com/2020/04/android-studio-inserire-lista-textview1.html On my Blog new article on Android Studio - Insert a list in a TextView. Link https://davidetech.blogspot.com/2020/04/android-studio-inserire-lista-textview1.html #programming #appdeveloper #developer #computerscience #programminglife #programminglanguage #google #android #androidstudio #app #kotlin #list #textview https://www.instagram.com/p/B_eX7LxgJvG/?igshid=13lta4q7l3uaj
#programming#appdeveloper#developer#computerscience#programminglife#programminglanguage#google#android#androidstudio#app#kotlin#list#textview
0 notes
Text
Textview code - Design and animation in Java programming
Textview code – Design and animation in Java programming


Simple text is good for easily read and simple view but it’s not good in every site. Sometimes we build different types application and we personalized various types of design and much more. in this post i write the code for your project about textview and textview design.
Create textview
final TextView mytext = new TextView(ProjectinActivity.this); mytext.setText(“Your Text”);…
View On WordPress
#wordpress#android code#android studio#android studio code#animation#aviinfo#aviinfo.blog#aviinfo.com#development#for development#programming#sketchwere#text animation#text design#textview#textview code#textview in programming
0 notes
Text
textView的常用屬性
建立第一個Android app之後,
接下來就是要根據需求開發所要的功能了,
Android設計的特色在於,
使用者介面(Layout)與程式邏輯(Activity)是分開設計後再build成apk檔案,
這樣的做法好處除了在於更改使用者介面不必動到程式碼之外,
對於各種不同尺寸的手機平板來說,
也能透過設定資源檔的方式避免更動到程式碼.
在建立Android專案之後,
Android Studio預設會建立一個Hello World的textview,
可在右半邊的屬性欄找到如以下:
textView的常用屬性
這裡可以列出一些常用的屬性供設計者開發用,
同時也可點選紅色框選部分,
列出所有屬性,
text : 在此設定要顯示的文字 frontFamily: 設定字型 textSize: 字型大小 textColor: 文字顏色 textStyle: …
View On WordPress
2 notes
·
View notes
Text
Excited for WWDC 🚀
My name is Praveen Nagaraj 👋 (@prvnngrj), founder of News Landed and Fiedra 🦋. Hailing from the Bay Area 🌉 and being raised by parents that work in big tech, 🍎 WWDC has always been a day of excitement for me. Though my parents have always worked in hardware, software development has slowly grown to become my passion more out of necessity. I founded News Landed (an open news publication 🌎 that reaches millions of users every month) in 2019 with the goal of making it accessible for anyone to apply and join to write for a large audience. Realizing that News Landed was fundamentally limited as a publisher, my team and I set out to create Fiedra, a social network for long-form content. After many unsuccessful attempts to recruit developers for my project, I took on the task of learning iOS development 🧑💻 in 3 months so I develop Fiedra 🦋 myself. A year later, Fiedra entered private beta testing, running (what I believe to be) the best mobile blog post editor amongst any platform. For WWDC 2021, I am really hoping for updates to UITextView and and TextKit ✏️. UITextView has many missing features, forcing developers to create (and make open-source) their own versions of UITextView such as TwitterTextEditor. I am also hoping for major updates to NSAttributedString 🧵. The current fashion in which iOS handles text formatting is cumbersome to implement. Styles such as bold and italics are hidden under symbolic traits 😩 while styles such as underline and strikethrough are easily accessible directly as attributes 🙏. Now, you may thinking... why is this guy talking about TextViews and AttributedStrings 🤔 when there are much more exciting stuff involving ML, LiDAR, and Apple Silicon. Well, just like Tumblr, the platform I'm developing deeply involves efficiently manipulating and formatting text ⌨️ (natively), without the use of web-based editors like Notion. Given the current state of native text formatting in Swift, I really think it's time for an update! What's the point in all these high-level APIs when simple text formatting isn't developer-friendly enough for everyone to use. 🤷♂️
8 notes
·
View notes