Tutorial by Examples: n

Idiom specific adjustments can be done from C# code, for example for changing the layout orientation whether the view is shown or a phone or a tablet. if (Device.Idiom == TargetIdiom.Phone) { this.panel.Orientation = StackOrientation.Vertical; } else { this.panel.Orientation = Stac...
Adjustments can be done for specific platforms from C# code, for example for changing padding for all the targeted platforms. if (Device.OS == TargetPlatform.iOS) { panel.Padding = new Thickness (10); } else { panel.Padding = new Thickness (20); } An helper method is also availab...
When working with XAML, using a centralized Style allows you to update a set of styled views from one place. All the idiom and platform adjustements can also be integrated to your styles. <Style TargetType="StackLayout"> <Setter Property="Padding"> <Setter...
You can create custom views that can be integrated to your page thanks to those adjustment tools. Select File > New > File... > Forms > Forms ContentView (Xaml) and create a view for each specific layout : TabletHome.xamland PhoneHome.xaml. Then select File > New > File... > F...
Creating variables in VBScript can be done by using the Dim, Public, or Private statement. It is best practice to put at the top of the script "Option Explicit" which forces you to explicitly define a variable. You can declare one variable like this: Option Explicit Dim firstName O...
Here are some ways to set variables: You can set a variable to a specific, string, number, date using SET EX: SET @var_string = 'my_var'; SET @var_num = '2' SET @var_date = '2015-07-20'; you can set a variable to be the result of a select statement using := EX: Select @var := '123'; (...
To mark some expression as an abbreviation, use <abbr> tag: <p>I like to write <abbr title="Hypertext Markup Language">HTML</abbr>!</p> If present, the title attribute is used to present the full description of such abbreviation.
To move to split on left, use <C-w><C-h> To move to split below, use <C-w><C-j> To move to split on right, use <C-w><C-k> To move to split above, use <C-w><C-l>
It's a better experience to open split below and on right set it using set splitbelow set splitright
Source table RowABCD1CodeProductColourPrice21penred50032penblue-5043penred054pencilblue1765pencilgreen-1.5 to select all: = QUERY(A1:D5, "select *") or = QUERY(A1:D5, "select A, B, C, D") or convert data range into array and use this formula: = QUERY({A1:D5}, "sel...
Assume you want to delegate to a class but you do not want to provide the delegated-to class in the constructor parameter. Instead, you want to construct it privately, making the constructor caller unaware of it. At first this might seem impossible because class delegation allows to delegate only to...
Gson does not support inheritance out of the box. Let's say we have the following class hierarchy: public class BaseClass { int a; public int getInt() { return a; } } public class DerivedClass1 extends BaseClass { int b; @Override public int getI...
Struct defines new classes with the specified attributes and accessor methods. Person = Struct.new :first_name, :last_name You can then instantiate objects and use them: person = Person.new 'John', 'Doe' # => #<struct Person first_name="John", last_name="Doe"> p...
Person = Struct.new :name do def greet(someone) "Hello #{someone}! I am #{name}!" end end Person.new('Alice').greet 'Bob' # => "Hello Bob! I am Alice!"
The first thing to do is to add the service to AndroidManifest.xml, inside the <application> tag: <application ...> ... <service android:name=".RecordingService" <!--"enabled" tag specifies Whether or not the service can ...
List comprehensions can introduce local bindings for variables to hold some interim values: [(x,y) | x <- [1..4], let y=x*x+1, even y] -- [(1,2),(3,10)] Same effect can be achieved with a trick, [(x,y) | x <- [1..4], y <- [x*x+1], even y] -- [(1,2),(3,10)] The let in list compr...
Any list comprehension can be correspondingly coded with list monad's do notation. [f x | x <- xs] f <$> xs do { x <- xs ; return (f x) } [f x | f <- fs, x <- xs] fs <*> xs do { f <- fs ; x <- xs ; return (f x) } [y | x &...
// circle objects: { x:, y:, radius: } // return true if the 2 circles are colliding // c1 and c2 are circles as defined above function CirclesColliding(c1,c2){ var dx=c2.x-c1.x; var dy=c2.y-c1.y; var rSum=c1.radius+c2.radius; return(dx*dx+dy*dy<=rSum*rSum); }
// rectangle objects { x:, y:, width:, height: } // return true if the 2 rectangles are colliding // r1 and r2 are rectangles as defined above function RectsColliding(r1,r2){ return !( r1.x>r2.x+r2.width || r1.x+r1.width<r2.x || r1.y>r2.y+r2.height || ...
// rectangle object: { x:, y:, width:, height: } // circle object: { x:, y:, radius: } // return true if the rectangle and circle are colliding function RectCircleColliding(rect,circle){ var dx=Math.abs(circle.x-(rect.x+rect.width/2)); var dy=Math.abs(circle.y-(rect.y+rect.height/2));...

Page 560 of 1088