This document discusses passing data between activities in Android applications. It provides an overview of different data passing methods, including using global variables stored in the application object, storing data in a separate data layer like a database, and sending data in bundles via intents. It also covers the Android activity lifecycle and how activities are stacked. The document includes code snippets and diagrams to illustrate concepts. It concludes with demos of passing data between activities using global variables and intents.
Lex is a program generator designed for lexical processing of character input streams. It works by translating a table of regular expressions and corresponding program fragments provided by the user into a program. This program then reads an input stream, partitions it into strings matching the given expressions, and executes the associated program fragments in order. Flex is a fast lexical analyzer generator that is an alternative to Lex. It generates scanners that recognize lexical patterns in text based on pairs of regular expressions and C code provided by the user.
Introduction to JavaScript course. The course was updated in 2014-15.
Will allow you to understand what is JavaScript, what's it history and how you can use it.
The set of slides "Introduction to jQuery" is a follow up - which would allow the reader to have a basic understanding across JavaScript and jQuery.
The document discusses files in Python. It defines a file as an object that stores data, information, settings or commands used with a computer program. There are two main types of files - text files which store data as strings, and binary files which store data as bytes. The document outlines how to open, read, write, append, close and manipulate files in Python using functions like open(), read(), write(), close() etc. It also discusses pickling and unpickling objects to binary files for serialization. Finally, it covers working with directories and running other programs from Python.
Functions, Exception, Modules and Files
Functions: Difference between a Function and a Method, Defining a Function, Calling a Function, Returning Results from a Function, Returning Multiple Values from a Function, Functions are First Class Objects, Pass by Object Reference, Formal and Actual Arguments, Positional Arguments, Keyword Arguments, Default Arguments, Variable Length Arguments, Local and Global Variables, The Global Keyword, Passing a Group of Elements to a Function, Recursive Functions, Anonymous Functions or Lambdas (Using Lambdas with filter() Function, Using Lambdas with map() Function, Using Lambdas with reduce() Function), Function Decorators, Generators, Structured Programming, Creating our Own Modules in Python, The Special Variable __name__
Exceptions: Errors in a Python Program (Compile-Time Errors, Runtime Errors, Logical Errors),Exceptions, Exception Handling, Types of Exceptions, The Except Block, The assert Statement, UserDefined Exceptions, Logging the Exceptions
20%
Files: Files, Types of Files in Python, Opening a File, Closing a File, Working with Text Files Containing Strings, Knowing Whether a File Exists or Not, Working with Binary Files, The with Statement, Pickle in Python, The seek() and tell() Methods, Random Accessing of Binary Files, Random Accessing of Binary Files using mmap, Zipping and Unzipping Files, Working with Directories, Running Other Programs from Python Program
This document provides an overview of scripting languages, including both client-side and server-side languages. It discusses what scripting languages are and how they differ from other programming languages. Several popular scripting languages are described, including JavaScript, PHP, ASP.NET, and more. JavaScript is discussed in more depth as a commonly used client-side language for adding interactivity to web pages. The document also covers JavaScript syntax like variables, operators, and functions, and how JavaScript interacts with web pages using the Document Object Model (DOM).
Lex is a program generator designed for lexical processing of character input streams. It works by translating a table of regular expressions and corresponding program fragments provided by the user into a program. This program then reads an input stream, partitions it into strings matching the given expressions, and executes the associated program fragments in order. Flex is a fast lexical analyzer generator that is an alternative to Lex. It generates scanners that recognize lexical patterns in text based on pairs of regular expressions and C code provided by the user.
Introduction to JavaScript course. The course was updated in 2014-15.
Will allow you to understand what is JavaScript, what's it history and how you can use it.
The set of slides "Introduction to jQuery" is a follow up - which would allow the reader to have a basic understanding across JavaScript and jQuery.
The document discusses files in Python. It defines a file as an object that stores data, information, settings or commands used with a computer program. There are two main types of files - text files which store data as strings, and binary files which store data as bytes. The document outlines how to open, read, write, append, close and manipulate files in Python using functions like open(), read(), write(), close() etc. It also discusses pickling and unpickling objects to binary files for serialization. Finally, it covers working with directories and running other programs from Python.
Functions, Exception, Modules and Files
Functions: Difference between a Function and a Method, Defining a Function, Calling a Function, Returning Results from a Function, Returning Multiple Values from a Function, Functions are First Class Objects, Pass by Object Reference, Formal and Actual Arguments, Positional Arguments, Keyword Arguments, Default Arguments, Variable Length Arguments, Local and Global Variables, The Global Keyword, Passing a Group of Elements to a Function, Recursive Functions, Anonymous Functions or Lambdas (Using Lambdas with filter() Function, Using Lambdas with map() Function, Using Lambdas with reduce() Function), Function Decorators, Generators, Structured Programming, Creating our Own Modules in Python, The Special Variable __name__
Exceptions: Errors in a Python Program (Compile-Time Errors, Runtime Errors, Logical Errors),Exceptions, Exception Handling, Types of Exceptions, The Except Block, The assert Statement, UserDefined Exceptions, Logging the Exceptions
20%
Files: Files, Types of Files in Python, Opening a File, Closing a File, Working with Text Files Containing Strings, Knowing Whether a File Exists or Not, Working with Binary Files, The with Statement, Pickle in Python, The seek() and tell() Methods, Random Accessing of Binary Files, Random Accessing of Binary Files using mmap, Zipping and Unzipping Files, Working with Directories, Running Other Programs from Python Program
This document provides an overview of scripting languages, including both client-side and server-side languages. It discusses what scripting languages are and how they differ from other programming languages. Several popular scripting languages are described, including JavaScript, PHP, ASP.NET, and more. JavaScript is discussed in more depth as a commonly used client-side language for adding interactivity to web pages. The document also covers JavaScript syntax like variables, operators, and functions, and how JavaScript interacts with web pages using the Document Object Model (DOM).
Pandas is an open source Python library that provides data structures and data analysis tools for working with tabular data. It allows users to easily perform operations on different types of data such as tabular, time series, and matrix data. Pandas provides data structures like Series for 1D data and DataFrame for 2D data. It has tools for data cleaning, transformation, manipulation, and visualization of data.
Introduction to data structures and AlgorithmDhaval Kaneria
This document provides an introduction to algorithms and data structures. It defines algorithms as step-by-step processes to solve problems and discusses their properties, including being unambiguous, composed of a finite number of steps, and terminating. The document outlines the development process for algorithms and discusses their time and space complexity, noting worst-case, average-case, and best-case scenarios. Examples of iterative and recursive algorithms for calculating factorials are provided to illustrate time and space complexity analyses.
Syntax directed translation allows semantic information to be associated with a formal language by attaching attributes to grammar symbols and defining semantic rules. There are several types of attributes including synthesized and inherited. Syntax directed definitions specify attribute values using semantic rules associated with grammar productions. Evaluation of attributes requires determining an order such as a topological sort of a dependency graph. Syntax directed translation schemes embed program fragments called semantic actions within grammar productions. Actions can be placed inside or at the ends of productions. Various parsing strategies like bottom-up can be used to execute the actions at appropriate times during parsing.
The document discusses web servers and their key components and functions. It covers:
1) The definition of a web server as a program that generates and transmits responses to client requests for web resources by parsing requests, authorizing access, and constructing responses.
2) How web servers handle client requests through steps like parsing requests, authorizing access, and transmitting responses. They can also dynamically generate responses through server-side includes and server scripts.
3) Techniques web servers use like access control through authentication and authorization, passing data to scripts, using cookies, caching responses, and allocating resources through event-driven, process-driven, and hybrid architectures.
Modules in Python allow organizing classes into files to make them available and easy to find. Modules are simply Python files that can import classes from other modules in the same folder. Packages allow further organizing modules into subfolders, with an __init__.py file making each subfolder a package. Modules can import classes from other modules or packages using either absolute or relative imports, and the __init__.py can simplify imports from its package. Modules can also contain global variables and classes to share resources across a program.
Client side scripting using JavascriptBansari Shah
The document discusses client-side scripting with JavaScript. It defines what a script is and notes that JavaScript is the main scripting language used for client-side scripting in web browsers. It describes how JavaScript can be used to add interactivity to HTML pages by dynamically updating content. The document also provides details on JavaScript statements, variables, functions, events, and how to access and modify the DOM using the document object model.
This document discusses task relevant data, discretization, and concept hierarchies in data mining. It defines task relevant data as the portions of a database or data set of interest to a user, including relevant attributes, dimensions, and selection criteria. Discretization reduces continuous attribute values to intervals, while concept hierarchies group low-level concepts into higher-level generalized concepts. Methods for generating concept hierarchies include binning, histogram analysis, clustering analysis, and analyzing attribute distinct values.
The document discusses object-oriented modeling and design. It introduces object-oriented concepts like objects, classes, attributes, operations, associations, and aggregation. It explains how object-oriented analysis involves building models using these concepts to represent the structure and behavior of a system. The analysis model is then used during the design stage to create optimized implementation models before programming. Graphical notations are used to express the object-oriented models.
The document discusses semantic web technology, which aims to make information on the web better understood by machines by giving data well-defined meaning. It outlines the evolution of web technologies from the initial web to the semantic web. Key aspects of semantic web technology include ontologies to define common vocabularies, semantic annotations to associate meaning with data, and reasoning capabilities to enable complex queries and analyses. Languages, tools, and applications are needed to implement these semantic web standards and make the web of linked data usable.
The document provides a history of the origins and development of the Internet from the 1960s to the 1990s. It describes how ARPANET was developed in the 1960s by the US Department of Defense and its Advanced Research Projects Agency (ARPA) to enable resource sharing between researchers. It evolved into a "network of networks" known as the Internet in the 1990s through networks like NSFNET that connected universities. The document also gives brief overviews of web browsers, web servers, URLs, and the Hypertext Transfer Protocol.
This document provides an overview of data warehousing. It defines data warehousing as collecting data from multiple sources into a central repository for analysis and decision making. The document outlines the history of data warehousing and describes its key characteristics like being subject-oriented, integrated, and time-variant. It also discusses the architecture of a data warehouse including sources, transformation, storage, and reporting layers. The document compares data warehousing to traditional DBMS and explains how data warehouses are better suited for analysis versus transaction processing.
Information systems analysis and design is a method used by companies to create and maintain information systems that perform basic business functions. It involves developing or acquiring application software and training employees to use it, with the goal of improving organizational systems. Key components of information systems include application software designed to support specific functions, as well as other system components collectively called computer-based information systems. Methodologies, techniques, and tools help analysts develop information systems through a sequence of structured steps.
Lecture-3: Introduction to html - Basic Structure & Block BuildingMubashir Ali
The document introduces HTML and discusses its basic structure and tags. It describes HTML as a markup language that defines the structure of webpages and allows for non-linear linking through hypertext. The document outlines HTML's history and development by the W3C. It explains the key parts of an HTML page including the <head> and <body> sections and common text formatting tags within the <body> like headings, paragraphs, and lists.
The document discusses different levels of coupling between data mining (DM) systems and database/data warehouse (DB/DW) systems. It defines:
1) No coupling as DM systems operating independently without utilizing any DB/DW functions.
2) Loose coupling as DM systems fetching data from and storing results in DB/DW systems.
3) Semi-tight coupling as DM systems linking to and using efficient implementations of some DM functions within DB/DW systems.
4) Tight coupling as DM systems being fully integrated with and optimized based on the query processing and data structures of DB/DW systems.
This document provides an overview of compilers, including their history, components, and construction. It discusses the need for compilers to translate high-level programming languages into machine-readable code. The key phases of a compiler are described as scanning, parsing, semantic analysis, intermediate code generation, optimization, and code generation. Compiler construction relies on tools like scanner and parser generators.
Lecture-1: Introduction to web engineering - course overview and grading schemeMubashir Ali
This document provides an introduction to the course "Introduction to Web Engineering". It discusses the need for applying systematic engineering principles to web application development to avoid common issues like cost overruns and missed objectives. The document defines web engineering and outlines categories of web applications of varying complexity, from document-centric to ubiquitous applications. Grading policies are also covered.
This document introduces various data controls in ASP.NET, including GridView, DataList, and Repeater controls. It discusses how to bind these controls to different data sources using ADO.NET. It also covers creating a master page layout with content placeholders and applying the master page to content pages.
HTTP is an application-level protocol for transmitting hypermedia documents across the internet. It uses a client-server model with requests containing a method, URL, and protocol version, and responses containing a status line and headers along with an optional body. Common methods include GET, POST, and HEAD. HTTP is stateless but can be made stateful through mechanisms like cookies.
HIT3328 - Chapter01 - Platforms and DevicesYhal Htet Aung
This document discusses mobile application development for smartphones. It covers mobile ecosystems, hardware capabilities and constraints, operating systems, and the application development lifecycle. The key points are:
1) Mobile ecosystems involve various players like platform providers, hardware manufacturers, network operators, and content providers. Operating systems like Android and iOS have different ecosystem participants.
2) Smartphone hardware faces constraints like limited memory, processing power, and battery life. Developers must optimize for these constraints.
3) Mobile operating systems tightly control apps to optimize resource usage and prioritize phone calls. Developers must be aware of how their app can be suspended, terminated or moved between foreground and background.
4) The application development process involves planning,
- The document discusses the need for a new global socio-economic system to address current issues like inequality, environmental degradation, and societal unrest.
- It proposes creating a Planetary Societal Renaissance through international cooperation on scientific research, sharing of new technologies and philosophies, and working towards common goals like environmental sustainability and universal human rights.
- Bringing people and organizations together in a Planetary Societal Renaissance could help establish a more stable and equitable world order through multicultural understanding and balanced economic growth.
Pandas is an open source Python library that provides data structures and data analysis tools for working with tabular data. It allows users to easily perform operations on different types of data such as tabular, time series, and matrix data. Pandas provides data structures like Series for 1D data and DataFrame for 2D data. It has tools for data cleaning, transformation, manipulation, and visualization of data.
Introduction to data structures and AlgorithmDhaval Kaneria
This document provides an introduction to algorithms and data structures. It defines algorithms as step-by-step processes to solve problems and discusses their properties, including being unambiguous, composed of a finite number of steps, and terminating. The document outlines the development process for algorithms and discusses their time and space complexity, noting worst-case, average-case, and best-case scenarios. Examples of iterative and recursive algorithms for calculating factorials are provided to illustrate time and space complexity analyses.
Syntax directed translation allows semantic information to be associated with a formal language by attaching attributes to grammar symbols and defining semantic rules. There are several types of attributes including synthesized and inherited. Syntax directed definitions specify attribute values using semantic rules associated with grammar productions. Evaluation of attributes requires determining an order such as a topological sort of a dependency graph. Syntax directed translation schemes embed program fragments called semantic actions within grammar productions. Actions can be placed inside or at the ends of productions. Various parsing strategies like bottom-up can be used to execute the actions at appropriate times during parsing.
The document discusses web servers and their key components and functions. It covers:
1) The definition of a web server as a program that generates and transmits responses to client requests for web resources by parsing requests, authorizing access, and constructing responses.
2) How web servers handle client requests through steps like parsing requests, authorizing access, and transmitting responses. They can also dynamically generate responses through server-side includes and server scripts.
3) Techniques web servers use like access control through authentication and authorization, passing data to scripts, using cookies, caching responses, and allocating resources through event-driven, process-driven, and hybrid architectures.
Modules in Python allow organizing classes into files to make them available and easy to find. Modules are simply Python files that can import classes from other modules in the same folder. Packages allow further organizing modules into subfolders, with an __init__.py file making each subfolder a package. Modules can import classes from other modules or packages using either absolute or relative imports, and the __init__.py can simplify imports from its package. Modules can also contain global variables and classes to share resources across a program.
Client side scripting using JavascriptBansari Shah
The document discusses client-side scripting with JavaScript. It defines what a script is and notes that JavaScript is the main scripting language used for client-side scripting in web browsers. It describes how JavaScript can be used to add interactivity to HTML pages by dynamically updating content. The document also provides details on JavaScript statements, variables, functions, events, and how to access and modify the DOM using the document object model.
This document discusses task relevant data, discretization, and concept hierarchies in data mining. It defines task relevant data as the portions of a database or data set of interest to a user, including relevant attributes, dimensions, and selection criteria. Discretization reduces continuous attribute values to intervals, while concept hierarchies group low-level concepts into higher-level generalized concepts. Methods for generating concept hierarchies include binning, histogram analysis, clustering analysis, and analyzing attribute distinct values.
The document discusses object-oriented modeling and design. It introduces object-oriented concepts like objects, classes, attributes, operations, associations, and aggregation. It explains how object-oriented analysis involves building models using these concepts to represent the structure and behavior of a system. The analysis model is then used during the design stage to create optimized implementation models before programming. Graphical notations are used to express the object-oriented models.
The document discusses semantic web technology, which aims to make information on the web better understood by machines by giving data well-defined meaning. It outlines the evolution of web technologies from the initial web to the semantic web. Key aspects of semantic web technology include ontologies to define common vocabularies, semantic annotations to associate meaning with data, and reasoning capabilities to enable complex queries and analyses. Languages, tools, and applications are needed to implement these semantic web standards and make the web of linked data usable.
The document provides a history of the origins and development of the Internet from the 1960s to the 1990s. It describes how ARPANET was developed in the 1960s by the US Department of Defense and its Advanced Research Projects Agency (ARPA) to enable resource sharing between researchers. It evolved into a "network of networks" known as the Internet in the 1990s through networks like NSFNET that connected universities. The document also gives brief overviews of web browsers, web servers, URLs, and the Hypertext Transfer Protocol.
This document provides an overview of data warehousing. It defines data warehousing as collecting data from multiple sources into a central repository for analysis and decision making. The document outlines the history of data warehousing and describes its key characteristics like being subject-oriented, integrated, and time-variant. It also discusses the architecture of a data warehouse including sources, transformation, storage, and reporting layers. The document compares data warehousing to traditional DBMS and explains how data warehouses are better suited for analysis versus transaction processing.
Information systems analysis and design is a method used by companies to create and maintain information systems that perform basic business functions. It involves developing or acquiring application software and training employees to use it, with the goal of improving organizational systems. Key components of information systems include application software designed to support specific functions, as well as other system components collectively called computer-based information systems. Methodologies, techniques, and tools help analysts develop information systems through a sequence of structured steps.
Lecture-3: Introduction to html - Basic Structure & Block BuildingMubashir Ali
The document introduces HTML and discusses its basic structure and tags. It describes HTML as a markup language that defines the structure of webpages and allows for non-linear linking through hypertext. The document outlines HTML's history and development by the W3C. It explains the key parts of an HTML page including the <head> and <body> sections and common text formatting tags within the <body> like headings, paragraphs, and lists.
The document discusses different levels of coupling between data mining (DM) systems and database/data warehouse (DB/DW) systems. It defines:
1) No coupling as DM systems operating independently without utilizing any DB/DW functions.
2) Loose coupling as DM systems fetching data from and storing results in DB/DW systems.
3) Semi-tight coupling as DM systems linking to and using efficient implementations of some DM functions within DB/DW systems.
4) Tight coupling as DM systems being fully integrated with and optimized based on the query processing and data structures of DB/DW systems.
This document provides an overview of compilers, including their history, components, and construction. It discusses the need for compilers to translate high-level programming languages into machine-readable code. The key phases of a compiler are described as scanning, parsing, semantic analysis, intermediate code generation, optimization, and code generation. Compiler construction relies on tools like scanner and parser generators.
Lecture-1: Introduction to web engineering - course overview and grading schemeMubashir Ali
This document provides an introduction to the course "Introduction to Web Engineering". It discusses the need for applying systematic engineering principles to web application development to avoid common issues like cost overruns and missed objectives. The document defines web engineering and outlines categories of web applications of varying complexity, from document-centric to ubiquitous applications. Grading policies are also covered.
This document introduces various data controls in ASP.NET, including GridView, DataList, and Repeater controls. It discusses how to bind these controls to different data sources using ADO.NET. It also covers creating a master page layout with content placeholders and applying the master page to content pages.
HTTP is an application-level protocol for transmitting hypermedia documents across the internet. It uses a client-server model with requests containing a method, URL, and protocol version, and responses containing a status line and headers along with an optional body. Common methods include GET, POST, and HEAD. HTTP is stateless but can be made stateful through mechanisms like cookies.
HIT3328 - Chapter01 - Platforms and DevicesYhal Htet Aung
This document discusses mobile application development for smartphones. It covers mobile ecosystems, hardware capabilities and constraints, operating systems, and the application development lifecycle. The key points are:
1) Mobile ecosystems involve various players like platform providers, hardware manufacturers, network operators, and content providers. Operating systems like Android and iOS have different ecosystem participants.
2) Smartphone hardware faces constraints like limited memory, processing power, and battery life. Developers must optimize for these constraints.
3) Mobile operating systems tightly control apps to optimize resource usage and prioritize phone calls. Developers must be aware of how their app can be suspended, terminated or moved between foreground and background.
4) The application development process involves planning,
- The document discusses the need for a new global socio-economic system to address current issues like inequality, environmental degradation, and societal unrest.
- It proposes creating a Planetary Societal Renaissance through international cooperation on scientific research, sharing of new technologies and philosophies, and working towards common goals like environmental sustainability and universal human rights.
- Bringing people and organizations together in a Planetary Societal Renaissance could help establish a more stable and equitable world order through multicultural understanding and balanced economic growth.
- Momentum is defined as the product of an object's mass and its velocity. The formula for momentum is p = mv, where p is momentum, m is mass, and v is velocity.
- The momentum of an object depends on both its mass and velocity - an object with greater mass or greater velocity will have greater momentum. For example, a lorry has greater momentum than a car moving at the same speed due to its larger mass.
This document contains lecture slides on building simple interactive apps for mobile devices. It discusses separating an app's presentation and functionality through XML layouts. It then demonstrates a simple temperature conversion app with buttons to convert between Celsius and Fahrenheit. When the device orientation changes, the app reverts to default values, likely because the activity is recreated on orientation changes and its state is not saved. The document recommends saving state regularly to prevent data loss during configuration changes.
This document provides an overview of Android Architecture Components (AAC). It discusses the key components of AAC including Room for database access, LiveData for observable data, ViewModel for UI-related data, Lifecycle-aware components for handling lifecycle changes, and WorkManager for background tasks. It describes how these components help address issues with traditional approaches, provide benefits like lifecycle awareness, and encourage decoupled app architecture. Examples are given throughout to illustrate how each component works and is used within an Android app.
This document summarizes the agenda and details of the Belfast Java User Group meeting on October 23rd, 2013. The meeting will include introductions to the Belfast JUG, an overview of what a JUG is and how to get involved. There will also be presentations on keynotes from JavaOne and 20+ new features in JEE7. Attendees are encouraged to contribute ideas and get involved in the leadership team.
Reactive Programming on Android - RxAndroid - RxJavaAli Muzaffar
Introduction to RxJava for reactive programming and how to use RxAndroid to do reactive programming on Android.
There is a sample android app to go with the slides that has all the source shown in the project.
Cesar Valiente "Unidirectional architecture on Android with Kotlin"IT Event
The document discusses using a unidirectional data flow architecture on Android applications. It describes combining elements of Flux and Redux, including actions, reducers, a store, and dispatcher. Views dispatch actions that are reduced by reducers to update the store's state. The store then notifies subscribers like the controller-view. The approach aims to have unidirectional data flows with immutable states and no external dependencies. An example app called KUnidirectional is presented to demonstrate this architecture in practice using Kotlin and Android.
SenchaCon 2016: Handling Undo-Redo in Sencha Applications - Nickolay PlatonovSencha
Undo and redo is a very common but not trivial feature, requested in most types of modern web applications. An application may define complex data processing rules involving data from different stores, which is tricky to handle when undoing an operation. With the Robo tool, we'll show you how to accurately revert data to any previous state with a simple undo() call.
The document provides an overview of a lecture on sketching apps. It discusses elements of design like motivation, scenarios, tasks and modes of operation. It provides examples of sketches and prototypes for mobile apps. Key differences between sketches and prototypes are outlined, with sketches being more tentative and exploratory while prototypes allow for more testing. An example concept for a gardening app is used to demonstrate sketching and paper prototyping techniques. The document emphasizes that sketching and prototyping help evolve the initial design and problem understanding.
Tutorial given at the European Conference for Machine Learning (ECMLPKDD 2015). It covers OpenML, how to use it in your research, interfaces in Java, R, Python, use through machine learning tools such as WEKA and MOA. Also covers topics in open science and reproducible research.
HIT3328 - Chapter0701 - Dialogs, Tabs and ListsYhal Htet Aung
This document discusses dialogs, tabs, and lists in Android mobile app development. It begins with a short introduction to design patterns and how API designers use patterns like method chaining and builder. It then covers creating custom dialog boxes in Android and how to construct them using callbacks. Tabbed layouts are explained using tab widgets and frame layouts. Lists are enhanced by adding images to rows using custom row adapters. Throughout, it emphasizes patterns like method chaining used in the Android SDK.
My talk slides at IEEE PerCom 2013. Link to paper: http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6526708
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=6815752
ML-Based Data-Driven Software Development with InfluxDB 2.0InfluxData
Hari Prasad was using InfluxDB for his personal weekend project as part of his hobby to map the water levels of lakes in his city, rainfall, evaporation index, etc.
His Eureka moment: Software development or any human activity flows with time. He started mapping software development with a time series DB and created an IoT within a software development tool. Before InfluxDB, developing a similar system required huge budget and maintenance efforts. With InfluxDB and its ecosystem, the quality cost & delivery were unbelievable. The Flux addition with 2.0 helped his team with the power of computing. They chose Flux over Python to determine mean, median, mode, and quantiles with Flux’s built-in functions. The talk shares the Templates, Flux queries, Scraper code with the open source community, all of which will be in GitHub where anyone can reference them.
The talk shows how quickly, reliably and cost-effectively you can do data-driven software development by writing custom code. It is so generic that all software development teams from small to large can benefit with little or no maintenance.
Runtime Behavior of JavaScript ProgramsIRJET Journal
The document analyzes the dynamic behavior of JavaScript programs by collecting execution traces from 103 websites and benchmark suites. It finds that JavaScript programs exhibit more dynamism than commonly assumed, with only 81% of call sites being monomorphic and many functions being variadic. Constructor functions also frequently return objects with different property sets. The study aims to provide a more accurate characterization of JavaScript behavior to inform future research.
Crafted Design - LJC World Tour Mash Up 2014Sandro Mancuso
This document introduces Interaction-Driven Design (IDD) and discusses concepts related to application architecture and testing strategies. It describes how IDD uses an outside-in approach where the design starts from actions and behaviors rather than data structures. Classes closer to user inputs focus on flow control and delegation, while those closer to outputs focus on specific behaviors with less delegation. The document also covers domain-driven design concepts like entities, aggregates, and repositories, and discusses strategies for unit, integration, acceptance, and end-to-end testing.
This document discusses functional reactive programming and RxJava. It begins with an overview of functional reactive programming principles like being responsive, resilient, elastic and message-driven. It then covers architectural styles like hexagonal architecture and onion architecture. The rest of the document dives deeper into RxJava concepts like Observables, Observers, Operators, and Schedulers. It provides code examples to demonstrate merging, filtering and transforming streams of data asynchronously using RxJava.
11.11.2020 - Unit 5-3 ACTIVITY, MENU AND SQLITE DATABASE.pptxMugiiiReee
This document provides information about activities, menus, intents, services, broadcast receivers and SQLite database in Android. It discusses the activity lifecycle and different types of activities. It explains the concept of intents and how they are used to start activities, services and broadcast receivers. It covers the different types of menus like option menu, context menu and popup menu. It discusses services, their types and lifecycle. It provides details about broadcast receivers, how they receive and respond to broadcast messages. It also gives an overview of SQLite database and how it is used in Android applications for data storage.
Building an Activity Feed with CassandraMark Dunphy
Mark Dunphy discusses the evolution of the Activity Feed system at Behance from MongoDB to Cassandra. The initial MongoDB implementation worked well for the smaller user base in 2011 but struggled with node failures, disk fragmentation, and downtime as the system scaled. Cassandra was chosen to replace it due to its scalability, performance, and ease of maintenance. Dunphy details the process of learning Cassandra, modeling the data, and developing a strategy for writes and reads that allowed the system to handle thousands of writes and reads per second while serving the Activity Feed to users.
Qualcomm Institute Winter IoT Program - Final PresentationMookeunJi
This document outlines an IoT air quality and heart rate monitoring project developed by Team D. It includes an introduction to the project goals and technologies, as well as sections on system architecture, development process, and demonstrations of the sensor, web, and mobile applications. The system architecture section describes the device-app, server-app, server-database, and server-web protocols and includes database schema and sequence diagrams. It also outlines the overall data flow between sensors, server, database, and apps/web.
Similar to HIT3328 - Chapter04 - Complex Interactions (20)
This document discusses menus, frame layouts, and lists in Android mobile app development. It covers creating custom menus as resources, handling menu clicks, and displaying toasts. It also explains how to use frame layouts to overlay views and toggle visibility. Finally, it discusses using adapters to connect lists to data sources and format each list item view.
The document discusses navigation flow and design approaches for mobile applications. It covers modeling navigation flows using simple notation to represent activities, triggers between activities, menus, tabs, and data passing. It emphasizes designing the navigation flow on paper first before coding. The initial code builds should focus on demonstrating the navigation flow without functionality, by wiring up lists, dialogs, menus and basic triggers between activities. Sketches of screens can also be included in initial builds to test overall look and feel. Detailed screen layouts are not needed in early builds.
This document discusses principles for designing forms on mobile devices. It covers:
1) Different layout options for labels and fields, recommending labels above input fields based on usability research.
2) Using a TableLayout to improve alignment and control over columns.
3) The "read-tap asymmetry" principle, which means labels can be smaller than fields since text can be read at smaller sizes.
4) Styles can be used to apply common formatting to labels consistently.
5) Scrolling is ideal for long forms on mobile. A soft keyboard pops up for data entry but lacks a tab button to navigate between fields.
HIT3328 - Chapter02 - Foundation and ToolsYhal Htet Aung
This document contains lecture notes on mobile application development for Android. It discusses the fundamentals of programs and operating systems, and provides an overview of what Android is for programmers. It covers Android development tools like the Eclipse IDE, Android SDK, and emulator. It also discusses configuring the IDE for additional insight through logging and emulator control. The document demonstrates how to build a simple Android app with a linear layout, text and image views. It explains the concepts of activities, views, view groups, and resources in Android apps.
CSC1100 - Chapter11 - Programming Languages and Program DevelopmentYhal Htet Aung
This document discusses various programming languages and the program development cycle. It describes low-level languages like machine language and assembly language as well as high-level procedural languages like COBOL and C. Object-oriented languages such as Java, C++, C#, and visual programming languages are also covered. The document outlines the six steps in the typical program development cycle: analyzing requirements, designing the solution, validating the design, implementing the design, testing the solution, and documenting the solution. Programming tools used at each step like flowcharts, pseudocode, and debugging are also summarized.
The document summarizes the key phases and activities of the system development life cycle, including planning, analysis, design, implementation, and operation/support phases. It describes the objectives of each phase such as determining requirements during analysis or developing detailed designs during design. Project management, documentation, and techniques like prototyping and testing are discussed as important elements that occur throughout the entire development cycle.
This document discusses various topics relating to computer security, ethics, and privacy. It covers types of computer security risks like viruses, worms, and Trojan horses. It also discusses techniques for safeguarding against internet and network attacks, unauthorized access and use, hardware theft and vandalism, and software theft. Some key safeguarding techniques mentioned are using antivirus software, firewalls, strong passwords, access controls, and biometric authentication.
1) A database is a collection of related data organized so that it can be easily accessed, managed, and updated. Database management systems (DBMS) allow users to create databases and access data in a controlled manner.
2) The database approach offers advantages over file processing systems like reduced data redundancy, improved data integrity, and shared access to data. Popular DBMSs include Microsoft Access, MySQL, Oracle, SQL Server, and IBM DB2.
3) Database administrators and analysts work to design efficient databases, define user access privileges, monitor performance and security, and ensure the reliability of data through backups and recovery procedures.
This document provides an overview of chapter 7 from the textbook Discovering Computers 2008. The chapter discusses computer communications and networks. It describes the components needed for successful communications including sending/receiving devices, communications devices, and transmission media. The chapter also covers network architectures like client/server and peer-to-peer, topologies like bus and star, standards such as TCP/IP and Wi-Fi, and transmission media including physical cables and wireless options. Uses of communications technology and common devices are also outlined.
This document provides an overview of operating systems and system software. It defines key terms like operating system, utility programs, and device drivers. It describes the basic functions of an operating system such as booting up a computer, providing a user interface, managing memory and programs, scheduling jobs, and establishing network and internet connections. It also discusses various types of operating systems like stand-alone, network, and embedded operating systems. Finally, it explains the purpose of common utility programs that come with operating systems like file managers, firewalls, disk cleaners, and backup utilities.
The document discusses different types of storage devices and media, describing the characteristics of magnetic disks like hard disks, optical discs like CDs and DVDs, as well as other storage technologies. It covers the basics of how these storage devices work, their capacities and speeds, and differentiates between read-only, recordable, and rewritable variants. The goal is to help students understand computer hardware storage and how various storage devices and media store and retrieve data.
This document discusses various computer output devices. It begins by defining output as processed data conveyed to users and describes the four main categories of output devices: display devices, printers, audio devices, and other specialized devices. The document then provides details on the characteristics and uses of different types of monitors (LCD, plasma, CRT), printers (inkjet, laser, photo), and audio devices (speakers, headphones). It concludes by suggesting configurations of output devices for different types of users (home, mobile, business).
This document discusses various types of computer input devices. It defines input and describes common input methods like keyboards, mice, touchscreens, scanners, cameras, and biometric devices. It explains how these devices work and are used for tasks like data entry, navigation, document scanning, video/photo capture, and identity verification. The document is intended to help students understand the characteristics and functionalities of basic computer hardware input components.
CSC1100 - Chapter02 - Components of the System UnitYhal Htet Aung
This document discusses the components of the system unit. It describes the central processing unit (CPU) which includes the control unit that directs operations and the arithmetic logic unit (ALU) that performs calculations. The CPU fetches instructions from memory and follows a machine cycle of fetch, decode, execute, and store. Caching and pipelining help improve processor speed. Memory temporarily stores instructions and data and comes in types like RAM, ROM, and flash memory. Expansion slots hold adapter cards to add functionality. Various ports allow connection to other devices.
CSC1100 - Chapter01 - Overview of Using ComputersYhal Htet Aung
This document provides an overview of using computers and defines key computer literacy terms. It describes the components of a computer including input devices, output devices, the system unit, storage, and communication devices. It also defines software, distinguishing between system software and application software. The document discusses advantages of using computers such as speed, reliability, consistency, storage, and communication. It also covers disadvantages including privacy violations, impacts on the labor force and environment, and potential health risks.
International Upcycling Research Network advisory board meeting 4Kyungeun Sung
Slides used for the International Upcycling Research Network advisory board 4 (last one). The project is based at De Montfort University in Leicester, UK, and funded by the Arts and Humanities Research Council.
RPWORLD offers custom injection molding service to help customers develop products ramping up from prototypeing to end-use production. We can deliver your on-demand parts in as fast as 7 days.
1. HIT3328 / HIT8328 Software Development for
Mobile Devices
Dr. Rajesh Vasa, 2011
Twitter: @rvasa
Blog: http://rvasa.blogspot.com
1
Lecture 04
Complex
Interactions
2. R. Vasa, 20112
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (using Global Variables)
•Application Manifest File
•Passing Data Demo (using Intents)
•Controlling Input Type
5. R. Vasa, 20115
User Interface (generally) Built
in XMLActivity
View Group
(Layout)
Activity Class (Java)
Layout Definition
(main.xml)
PresentatioPresentatio
nn
FunctionaliFunctionali
tyty
6. R. Vasa, 20116
The Android Way - Convention not
Config.
•Source code (src)
•Generated code (gen)
•Resources (res)
•Images (@drawable)
•Layout of app (layout)
•Constants/Strings (@strings)
Conventions to Follow
8. R. Vasa, 20118
Provide Resources @Multiple
Resolutions
High
Low
Medium
Conventions to Follow
9. R. Vasa, 20119
View Identifiers
@+id TAG creates new identifiers
Conventions to Follow
10. R. Vasa, 201110
UI Interaction Handling Pattern
•Component.setOn......Listener ( handler
)
•E.g. button.setOnClickListener
•Handler is an anonymous inner class
•On...Listener handler = new
On....Listener() {}
11. R. Vasa, 201111
Android Activity Life Cycle
onCreate is called
when Activity Starts
Activity is
re-started
when
orientatio
n
changes
12. R. Vasa, 201112
We Retrieve State On Creation
State retrieval
done here
onSaveInstanceState(
) is called from this
state
(Save Saved here)
13. R. Vasa, 201113
Bundle stores simple state
information
BundleBundle
putString(key, value)
putDouble(key, value)
putInt(key, value)
putStringArray(k
ey, value[])
It is a Key, Value store system
(like a Hash Table or a Hash Map)
Code Snippet:
state.putString("inputTemperature", inputTemp);
Code Snippet:
state.putString("inputTemperature", inputTemp);
15. R. Vasa, 201115
Short Problem 1 - Passing Data
•Context: In Android -- Apps are made of
Activities. So, each Screen is a “new”
Activity
• We want to pass data between Activities.
• But, Activity construction is managed by the
Dalvik runtime. That is, cannot pass data into
constructor.
•What would you prefer to do?
• Store shared data in global variables available to
ALL Activities.
• Move all data to a separate data layer.
• Send primitive data bundles between
16. R. Vasa, 201116
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (using Global Variables)
•Passing Data Demo (using Intents)
•Controlling Input Type
17. R. Vasa, 201117
Wiring up Activities -- Typical
Use Case
Select
Back
Contact List Activity Contact Details
18. R. Vasa, 201118
Wiring up Activities -- Typical
Use Case
Select
Contact List Activity Contact Details
We re-use this
activity with
different data
Select
19. R. Vasa, 201119
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing options
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (using Global Variables)
•Passing Data Demo (using Intents)
20. R. Vasa, 201120
Data Passing Option - Global
Variables
•We can use Global Variables ... but,
•Widely accepted as a “risky” choice
•A few global variables are used in many
large systems (e.g. Linux Kernel Source
Code)
•Risk manageable in ‘small’ programs
•Good thread @ StackOverflow
http://goo.gl/EouH3
•Constant values as globals is ok (e.g.
R.java)
•Key Issue (to manage): How many objects
21. R. Vasa, 201121
Data Passing Option - Data
Layer
•We can store all data in a DBMS and access
it via a “data layer”
•Good idea when dealing with large /
complex blocks of data
•Overkill if we only need to store a few values
•The data store can be “in-memory”,
“on-disk”, and/or “on remote server”
22. R. Vasa, 201122
Data Passing Option - Bundles
•We can put data into a bundle and pass
this across using a “messaging
framework”
•Simple (once you understand the messaging
framework architecture)
•Persistence is not managed (like DBMS)
23. R. Vasa, 201123
Data Passing Option - iOS
Only!!
•You can pass data directly to methods in
another screen (UIViewController)
•UIViewController is approx. similar to Activity
•This option is not possible in Android -- this
was a “design intent” (design side-effect?)
24. R. Vasa, 201124
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (using Global Variables)
•Passing Data Demo (using Intents)
•Controlling Input Type
25. R. Vasa, 201125
iOS Apps. are directly managed
by O/S
UIAppDelegateUIAppDelegate
UIViewController-UIViewController-
AA
UIViewController-UIViewController-
BB
UIViewController-UIViewController-
CC
UIAppDelegate has Life
CycleView Controllers are
managed by the App
internally
Image Source: Apple Inc.
Life Cycle => Managed by Operating
System
26. R. Vasa, 201126
Android Activities are Managed by
O/S
Activity-AActivity-A
Activity-CActivity-C
Activity-BActivity-B
ApplicatiApplicati
onon Activities have
a parent
application
Activity has Life CycleApplication is NOT
managed directly by
the O/SLife Cycle => Managed by Operating
System
27. R. Vasa, 201127
A Key Design Different (iOS Vs
Android)
Activity-AActivity-A
Activity-CActivity-C
Activity-BActivity-B
UIAppDelegateUIAppDelegate
UIViewController-UIViewController-
AA
UIViewController-UIViewController-
BB
UIViewController-UIViewController-
CC
ApplicatiApplicati
onon
UIAppDelegate has Life
Cycle
Activities have
a parent
application
Activity has Life CycleApplication is NOT
managed directly by
the O/SLife Cycle => Managed by Operating
System
View Controllers are
managed by the App
internally
28. R. Vasa, 201128
Activity Life Cycle Design
Choice....
•Android developers decided to give Activity
a life cycle (rather than the application)
•This makes each Activity similar to a
separate program
•Hence, data passing is restricted to:
•Global Variables (stored in Application
object)
•Data bundles passed via async. messages
•Data stored externally in files or DBMS
29. R. Vasa, 201129
Short Problem 2 - Activity Design
Choice
•Unlike iOS ViewControllers, Activities have
been modelled to be (almost) like
independent programs
•What is the likely rationale for such a
choice?
•What would be the benefits?
30. R. Vasa, 201130
Only One Activity is
Active/Running
•Only one Activity can
be in the ‘foreground’
•When Activity-A calls
Activity-B
•Activity-B will be visible
to the user
(foreground)
•Activity-A is paused
(background)
31. R. Vasa, 201131
Activities are Stacked in
Android
•All created activities are placed on a Stack
•Activities ‘popped’ when ‘Back Button’ is
pressed
Activity-AActivity-A
Foreground/Acti
ve
If only one activity
is on the Activity
Stack then “back”
button exits it
32. R. Vasa, 201132
Activities are Stacked in
Android
•All current activities are placed on a Stack
•Newly started activities come into
foreground
Activity-AActivity-A
Activity-BActivity-B
Foreground/Acti
ve
starts
Background/
Paused
Back button will
pop top most
activity from
stack
33. R. Vasa, 201133
Activities are Stacked in
Android
•As additional activities are started, older
activities go into background
•All activities are placed on Activity Stack
Activity-AActivity-A
Activity-BActivity-B
Activity-CActivity-CForeground/Acti
ve
starts
starts
Background/Pause
d
34. R. Vasa, 201134
Short Problem 3 - Activity
Stacking
•Consider the following situation,
Activity-AActivity-A
Activity-BActivity-B
Activity-CActivity-C
starts
starts
Activity-AActivity-A
starts
Are these activities
the same object?
Ponder the interaction design
implications .....
Will Back Button Exit the
App?
36. R. Vasa, 201136
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (using Global Variables)
•Passing Data Demo (using Intents)
•Controlling Input Type
37. R. Vasa, 201137
Demo 1 - Life Cycle of an Android
App.
•Walk-through of code provided along with
lecture handout.
•We can see the states by adding a little bit
of logging code to a few call-backs
42. R. Vasa, 201142
Before data passing -- a quick
recap
•This app. makes use of nested layouts
•We can also make it look a bit nicer using
weights
43. R. Vasa, 201143
Anatomy of the App. (Nested
Layout)
Linear Layout
TextView
ImageView
Linear Layout
Button (Fruit)
Button (Vegetable)
Button (Drink)
44. R. Vasa, 201144
A Weighty Problem
Spot the difference in layout
How achieved? android:layout_weight=”1”
for all buttons in the layout
45. R. Vasa, 201145
Layout Weights are Handy
If all buttons are given the
same weight, then they will
be of same size
46. R. Vasa, 201146
Demo 2 - Passing Data
Activity - FoodMain Activity - FoodView
Data Passed:
Name (“Fruit”)
Image (fruit.png)
47. R. Vasa, 201147
Passing Data with Globals
•All Activities have a parent Application
object
•We can store data in this Application object
Activity-AActivity-A
Activity-CActivity-C
Activity-BActivity-B
ApplicatiApplicati
onon Activities have
a parent
application
We need to
extend the
Application class
to do this
48. R. Vasa, 201148
What Creates/Manages
Application?
•Application is created and managed by the
Android runtime
•There is one Application object created by
default
•We can extend the “Application Class” and
make our own
•But, we need to tell the Runtime about this
Application object via the Manifest XML
file
49. R. Vasa, 201149
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (Global Variables)
•Application Manifest File
•Passing Data Demo (using Intents)
•Controlling Input Type
50. R. Vasa, 201150
Manifest contains Application
Metadata
• Android runtime creates the Application object
• Application metadata is provided in the Manifest
XML
Manifest XML file is
part of the project
Auto-generated by Eclipse IDE
51. R. Vasa, 201151
Manifest XML - What is it?
Manifest informs Runtime about the App.Manifest informs Runtime about the App.
56. R. Vasa, 201156
Passing Data with Globals
•All Activities have a parent Application
object
•We can store data in this Application object
FoodApplicatiFoodApplicati
onon
ApplicatiApplicati
onon
We need to
extend the
Application class
to do this
extends
57. R. Vasa, 201157
Global Vars. can be in the
Application
FoodApplicatiFoodApplicati
onon
ApplicatiApplicati
onon
extends
58. R. Vasa, 201158
Activities and Globals in
Application
•Activities can access data from the
Application object
We can also get to these variables from any Activi
(declared in the Manifest XML file)
We can also get to these variables from any Activit
(declared in the Manifest XML file)
59. R. Vasa, 201159
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (Global Variables)
•Passing Data Demo (using Intents)
•Controlling Input Type
60. R. Vasa, 201160
Demo 2 - Passing Data using
Intents
Activity - FoodMain Activity - FoodView
Data Passed:
Name (“Fruit”)
Image (fruit.png)
61. R. Vasa, 201161
Wiring up the Buttons (Another
Way)
Buttons
support onClick
in the layout
XML
Buttons
support onClick
in the layout
XML
63. R. Vasa, 201163
Sending an Async. Message
Android uses an asynchronous messaging
model (known as Intents) to send messages
between Activities
Android uses an asynchronous messaging
model (known as Intents) to send messages
between Activities
64. R. Vasa, 201164
Sending an Async. Message
Setup Message and Store
Data in the Message
Setup Message and Store
Data in the Message
65. R. Vasa, 201165
Sending an Async. Message
Class that is sending
the Intent (message)
Class that is sending
the Intent (message)
66. R. Vasa, 201166
Sending an Async. Message
Class that will receive
the Intent (message)
Class that will receive
the Intent (message)
Class that is sending
the Intent (message)
Class that is sending
the Intent (message)
67. R. Vasa, 201167
Sending an Async. Message
Send the Message to the Activity
(Transmit)
Send the Message to the Activity
(Transmit)
68. R. Vasa, 201168
Message Receiving
Retrieve data from the
message
Retrieve data from the
message
69. R. Vasa, 201169
Intent Messages are
Asynchronous
•The intent system is completely
asynchronous -- similar to e-mail
•That is,
•The receiver will get the message only if
they request to see intents via getIntent()
method
•All transmitted messages are placed on a
‘Service Queue’
70. R. Vasa, 201170
Complex Domain Models
•Where do you hold a complex domain
model?(E.g. we have 4-5 classes in a
domain model)
•We can hold a reference to the domain
model objects in the Application
•This is fine if there are only a few objects
•Unlike Activity, Application is only terminated
if device runs low on memory
•If the data size is larger -- then best to use
the sqlite database
71. R. Vasa, 201171
Lecture Overview
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (Global Variables)
•Passing Data Demo (using Intents)
•Controlling Input Type
72. R. Vasa, 201172
Controlling Input Data Type
•A common task on forms is to restrict users
to certain data types
•Email Address
•Decimal Numbers
•Positive Integers
•Alpha Numeric
•On mobile devices -- development
platforms offer a simple way to control the
keyboard type
73. R. Vasa, 201173
Controlling Input Type
(Android)
•Android has a large number of options
•You can merge them to create more
complex input types
textUri
textEmailAddress
textPassword
textPersonName
number
numberSigned
numberDecimal
numberPassword
textUri
textEmailAddress
textPassword
textPersonName
number
numberSigned
numberDecimal
numberPassword
android:inputTypeandroid:inputType
74. R. Vasa, 201174
Input Type - Example
http://developer.android.com/reference/android/widget/TextView.html#attr_andro
id:inputType
More info. at the following URL
75. R. Vasa, 201175
Lecture Recap
•Recap (previous 2 weeks)
•Passing Data between Activities
•Data passing methods
•Activity Design Choice
•Activity Life Cycle
•Passing Data Demo (Global Variables)
•Passing Data Demo (using Intents)
•Controlling Input Type
76. R. Vasa, 201176
What’s next?
•Usability Principles - Mobile Form Design
•Using Dialogs
•Returning data back from an Activity
•Simple File I/O
•More complex layouts
•Exploring a few more widgets