Rectangle 27 2

OK, just ran into this. Buttons in Lollipop come out all uppercase AND the font resets to 'normal'. But in my case (Android 5.02) it was working in one layout correctly, but not another!? Changing APIs didn't work. Setting to all caps requires min API 14 and the font still resets to 'normal'. It's because the Android Material Styles forces a change to the styles if there isn't one defined (that's why it worked in one of my layout and not the other because I defined a style). So the easy fix is to define a style in the manifest for each activity which in my case was just: android:theme="@android:style/Theme.NoTitleBar.Fullscreen" (hope this helps someone, would have saved me a couple of hours last night)

That is a very bad attempt, just create styles for your buttons, one in values-21 that has allCaps false. Falling back to an older theme (here a Holo Theme) makes your app uglier and more inconsistent to the user.

android - Why is my Button text forced to ALL CAPS on Lollipop? - Stac...

android android-5.0-lollipop android-button android-styles
Rectangle 27 4

There's tons of different coding styles of how to combine curly braces and switches. I'll use the one I prefer in the examples. The break statement breaks out of the innermost loop or switch statement, regardless of location. You could for example have multiple breaks for a single case:

switch (foo) {
case 1:
    {
        if (bar)
            break;
        bar = 1;
        ...
    }
    break;
}

Note that you can also put the cases anywhere, though that is somewhat considered bad practice. The case label is very much like a goto label. It has happened that I've written something like this:

switch (foo) {
case 1:
    bar = 1;
    if (0) {
case 2:
        bar = 2;
    }
    ...
    break;
}

but use it with care.

c - 'break' statement when using curly braces in switch-case - Stack O...

c coding-style curly-braces switch-statement
Rectangle 27 0

There's tons of different coding styles of how to combine curly braces and switches. I'll use the one I prefer in the examples. The break statement breaks out of the innermost loop or switch statement, regardless of location. You could for example have multiple breaks for a single case:

switch (foo) {
case 1:
    {
        if (bar)
            break;
        bar = 1;
        ...
    }
    break;
}

Note that you can also put the cases anywhere, though that is somewhat considered bad practice. The case label is very much like a goto label. It has happened that I've written something like this:

switch (foo) {
case 1:
    bar = 1;
    if (0) {
case 2:
        bar = 2;
    }
    ...
    break;
}

but use it with care.

c - 'break' statement when using curly braces in switch-case - Stack O...

c coding-style curly-braces switch-statement
Rectangle 27 0

Thanks Laurence for the answer. I am trying this one and lets see what will be the outcome. Also let me try to understand what is going on in the code snippet you have provided ))

No problem, I've made small change to the second block of code concerning the name of the extended TypefaceSpan. In terms of implementation, the CustomTypefaceSpan is ready to go, you will just need to add this to your project. The second block of code is what you will need to edit.

Laurence that works for me. The issue seems to be small but the solution is a bit complex. Thanks for the help that really saved my time.

Hi, i have posted a related question here stackoverflow.com/questions/17744664/ In which i want to know can i drireclty apply any spans on my text to use the above custom type faces, please have a look on my question and help me

There's a minor bug in here: where you have secondWord.length(), it should be the length of the entire combined string, not just the length of the second word. Otherwise, you will most likely get an IndexOutOfBoundsException

android - Apply two different font styles to a TextView - Stack Overfl...

android fonts styles textview
Rectangle 27 0

I don't have the proper reputation to comment but I can confirm, that approaches work. Using FontForge (binary available for Windows):

  • Open your multiple .otf files with FontForge (Regular, Bold, Italic).
  • Make sure to select the window showing the "Regular" version of the font
  • Use File > Save ttc from that window
  • See that indeed the other sub fonts are listed in the save dialog (bold, italic)
  • Save and use this ttc file in Android

I tested it with an html text displayed in a TextView : <b>Test</b> Test <i>Test</i>-> "Test Test Test" which didn't work previously in Android 2.3.7 and with this ttc font all three versions of the text show perfectly.

As I said, it's important to select the Regular font when exporting because that's the one Android uses as "default" (I did an export first from the Bold version and it was all Bold).

Merging two otf in one ttc file, worked for me (on 2.3.3 and 4.4). Many thanks.

Android - Combining multiple font styles, into one single font (Typefa...

android android-layout fonts
Rectangle 27 0

I don't think the Android font has the glyph for U+0305. To confirm (or not) this theory you can try embedding a fond you know it's ok with your application and try using that one.

But even if the font has the glyph, the text layout engine might not be smart enough to do the right thing.

I am actually using the STIX fonts which are created for mathematic [stixfonts.org/project.html]

java - Unicode combining character is printed on its own (not combinin...

java android unicode textview unicode-string
Rectangle 27 0

One animation one element is how it works as the animations change the styles of a single element. You can however apply delays to the animations to achieve what you want, allowing you to move pretty much everything out of JS.

This example merges your .outside an .inside animations, by basically appending them with a comma to the rule and you JS now just adds the class like this -webkit-animation-name: button-bounce, rotate, skyblue;

.outside.animate {
    -webkit-animation-delay: 0s, .5s, .5s;
    -webkit-animation-duration: 500ms, 1000ms, 1000ms;
    -webkit-animation-name: button-bounce, rotate, skyblue;
}

.animate {
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease;
    -webkit-transform: translateZ(0);
}

.outside.animate .inside {
    -webkit-animation-delay: .5s, .5s, 1.5s;
    -webkit-animation-duration: 1000ms, 1000ms, 750ms;
    -webkit-animation-name: rotate, magenta, scale-in;
}
@-webkit-keyframes magenta {
    0% { border: 1px solid magenta; }
    99.99% { border: 1px solid magenta; }
    100% { border: 1px solid skyblue; }
}
@-webkit-keyframes skyblue {
    0% { border: 1px solid skyblue; }
    99.99% { border: 1px solid skyblue; }
    100% { border: 1px solid magenta; }
}
$(document).ready(function() {
    $(document).click(function() {
        var count = 0;
        var jqElement = $('.outside');
        if (!jqElement.hasClass('animate')) {
            jqElement.addClass('animate');
            jqElement.on('animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd', function(event) {
                count++;
                if (count >= 6) {
                    jqElement.off('animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd');
                    jqElement.removeClass('animate');
                }
            });
        }
    });
});

hey Daniel, thanks for this! I did make an update to the code after I posted but it seems like you started on this before my update... I added a third animation at the end. Would you mind taking a look at my code again?

Daniel... there's a particular reason why I use multiple animations... to change the styling at the beginning of each. It seems like there's no way to do that with your current fiddle. Notice in the original fiddle how the border color changes from the beginning to the end. Is that possible to include with your approach?

@Hristo Updated with a fix for the border colours, I didn't notice before. Also hooked up animationend listening so you can trigger it more than once.

css3 - combining multiple css animations into one overall animation - ...

css3 css-animations
Rectangle 27 0

OK, just ran into this. Buttons in Lollipop come out all uppercase AND the font resets to 'normal'. But in my case (Android 5.02) it was working in one layout correctly, but not another!? Changing APIs didn't work. Setting to all caps requires min API 14 and the font still resets to 'normal'. It's because the Android Material Styles forces a change to the styles if there isn't one defined (that's why it worked in one of my layout and not the other because I defined a style). So the easy fix is to define a style in the manifest for each activity which in my case was just: android:theme="@android:style/Theme.NoTitleBar.Fullscreen" (hope this helps someone, would have saved me a couple of hours last night)

That is a very bad attempt, just create styles for your buttons, one in values-21 that has allCaps false. Falling back to an older theme (here a Holo Theme) makes your app uglier and more inconsistent to the user.

android - Why is my Button text coerced to ALL CAPS on Lollipop? - Sta...

android android-5.0-lollipop android-button android-styles
Rectangle 27 0

One animation one element is how it works as the animations change the styles of a single element. You can however apply delays to the animations to achieve what you want, allowing you to move pretty much everything out of JS.

This example merges your .outside an .inside animations, by basically appending them with a comma to the rule and you JS now just adds the class like this -webkit-animation-name: button-bounce, rotate, skyblue;

.outside.animate {
    -webkit-animation-delay: 0s, .5s, .5s;
    -webkit-animation-duration: 500ms, 1000ms, 1000ms;
    -webkit-animation-name: button-bounce, rotate, skyblue;
}

.animate {
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-timing-function: ease;
    -webkit-transform: translateZ(0);
}

.outside.animate .inside {
    -webkit-animation-delay: .5s, .5s, 1.5s;
    -webkit-animation-duration: 1000ms, 1000ms, 750ms;
    -webkit-animation-name: rotate, magenta, scale-in;
}
@-webkit-keyframes magenta {
    0% { border: 1px solid magenta; }
    99.99% { border: 1px solid magenta; }
    100% { border: 1px solid skyblue; }
}
@-webkit-keyframes skyblue {
    0% { border: 1px solid skyblue; }
    99.99% { border: 1px solid skyblue; }
    100% { border: 1px solid magenta; }
}
$(document).ready(function() {
    $(document).click(function() {
        var count = 0;
        var jqElement = $('.outside');
        if (!jqElement.hasClass('animate')) {
            jqElement.addClass('animate');
            jqElement.on('animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd', function(event) {
                count++;
                if (count >= 6) {
                    jqElement.off('animationend webkitAnimationEnd oAnimationEnd MSAnimationEnd');
                    jqElement.removeClass('animate');
                }
            });
        }
    });
});

hey Daniel, thanks for this! I did make an update to the code after I posted but it seems like you started on this before my update... I added a third animation at the end. Would you mind taking a look at my code again?

Daniel... there's a particular reason why I use multiple animations... to change the styling at the beginning of each. It seems like there's no way to do that with your current fiddle. Notice in the original fiddle how the border color changes from the beginning to the end. Is that possible to include with your approach?

@Hristo Updated with a fix for the border colours, I didn't notice before. Also hooked up animationend listening so you can trigger it more than once.

css3 - combining multiple css animations into one overall animation - ...

css3 css-animations
Rectangle 27 0

This may work - create your own custom TextView and then use a StyleSpan on one part of it:

public class CustomTextView extends TextView {

    public CustomTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    public void setTypeface(Typeface tf, int style) {
        if (style == 1){
            //replace "HelveticaBOLD.otf" with the name of your bold font
            tf = Typeface.createFromAsset(getContext().getApplicationContext().getAssets(), "HelveticaBOLD.otf");
        }else{
            //replace "HelveticaNORMAL.otf" with the name of your normal font
            tf = Typeface.createFromAsset(getContext().getApplicationContext().getAssets(), "HelveticaNORMAL.otf");
        }
        super.setTypeface(tf, 0);
    }
}

And then you can do something like:

int index1 = 0; //wherever bold should begin
int index2 = 5; //wherever bold should end

Spannable span = new SpannableString("some string");
span.setSpan(new StyleSpan(Typeface.BOLD),index1, index2,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

((CustomTextView)findViewById(R.id.yourTextView)).setText(span);

Exactly what i was looking for, Thanks

android - Apply two different font styles to a TextView - Stack Overfl...

android fonts styles textview
Rectangle 27 0

I don't know of a way to treat different typeface variants of a single font as one family, but typefaces tend to have large file sizes so you probably wouldn't want to import all those typefaces into your app anyway. Instead, you could use just the Medium font and then set bold and italic attributes for that.

For example, if you have android:textStyle="bold" set in your XML layout, you can do this in your code to keep the bold style:

Typeface currentTypeFace = textView.getTypeface();
if (currentTypeFace != null && currentTypeFace.getStyle() == Typeface.BOLD) {
    textView.setTypeface(tf, Typeface.BOLD);
} else {
    textView.setTypeface(tf);
}

Android set Roboto font with bold, italic, regular,... (something like...

android fonts typeface fontfamily
Rectangle 27 0

Instead of using two UILabels, you can have one label with multiple text fonts styles and colors. Here is an example, may be that might help you :

UILabel *customLbl = [[UILabel alloc] initWithFrame:CGRectMake(50, 100, 200, 25)];
customLbl.backgroundColor = [UIColor yellowColor];
[self createTwoTextStyleInSingleUILabel:customLbl];// custom method calling
[self.view addSubview:customLbl];

Custom Method goes like this : Before applying this method, add QuartzCore framework (needed for CALayers), and CoreText framework(needed for the attributed string.) in your project.

#import <QuartzCore/QuartzCore.h>
  #import <CoreText/CoreText.h>  

- (void)createTwoTextStyleInSingleUILabel: (UILabel *) myLabel{
NSString *firstText = NSLocalizedString(@"First text:", nil);
NSString *secondText = [NSString stringWithFormat:@"%@ %@",firstText,@"Second text"];
CATextLayer *myLabelTextLayer;
/* Create the text layer on demand */
if (!myLabelTextLayer) {
    myLabelTextLayer = [[CATextLayer alloc] init];
    myLabelTextLayer.backgroundColor = [UIColor clearColor].CGColor;
    myLabelTextLayer.wrapped = NO;
    CALayer *layer = myLabel.layer; //assign layer to your UILabel
    myLabelTextLayer.frame = CGRectMake((layer.bounds.size.width-180)/2 + 10, (layer.bounds.size.height-30)/2 + 10, 180, 30);
    myLabelTextLayer.contentsScale = [[UIScreen mainScreen] scale];
    myLabelTextLayer.alignmentMode = kCAAlignmentCenter;
    [layer addSublayer:myLabelTextLayer];
}
/* Create the attributes (for the attributed string) */
// customizing first string
CGFloat fontSize = 16;
UIFont *boldFont = [UIFont boldSystemFontOfSize:fontSize];
CTFontRef ctBoldFont = CTFontCreateWithName((__bridge CFStringRef)boldFont.fontName, boldFont.pointSize, NULL);
CGColorRef cgColor = [UIColor redColor].CGColor;
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:
                            (__bridge id)ctBoldFont, (id)kCTFontAttributeName,
                            cgColor, (id)kCTForegroundColorAttributeName, nil];
CFRelease(ctBoldFont);
 // customizing second string
UIFont *font = [UIFont systemFontOfSize:16];
CTFontRef ctFont = CTFontCreateWithName((__bridge CFStringRef)font.fontName, font.pointSize, NULL);
CGColorRef cgSubColor = [UIColor blackColor].CGColor;
NSDictionary *subAttributes = [NSDictionary dictionaryWithObjectsAndKeys:(__bridge id)ctFont, (id)kCTFontAttributeName,cgSubColor, (id)kCTForegroundColorAttributeName, nil];
CFRelease(ctFont);
/* Create the attributed string (text + attributes) */
NSMutableAttributedString *attrStr = [[NSMutableAttributedString alloc] initWithString:secondText attributes:attributes];
float lengthOfSecondString = 12.0; // length of second string including blank space inbetween text, space in front , space after text.. Be careful, your  app may crash here if length is beyond the second text length (lengthOfSecondString = text length + blank spaces)
[attrStr addAttributes:subAttributes range:NSMakeRange(firstText.length, lengthOfSecondString)];
// you can add another subattribute in the similar way as above , if you want change the third textstring style
/* Set the attributes string in the text layer :) */
myLabelTextLayer.string = attrStr;
myLabelTextLayer.opacity = 1.0; //to remove blurr effect

}

iphone - Overriding UILabel - Stack Overflow

iphone objective-c ipad override uilabel
Rectangle 27 0

Excel does support using css styling, but only if there is one class on the element. If there are multiple classes then it will not do any style on the element, see CSS style class not combining in Excel

Having said that, this is the code I put together to grab all the styles on a page and export an HTML table. It's a brute force, grab everything approach, but you could probably pair it down if you know the specifics. The function returns a jQuery Promise. From that you can do whatever with the result.

function excelExportHtml(table, includeCss) {

    if (includeCss) {
        var styles = [];

        //grab all styles defined on the page
        $("style").each(function (index, domEle) {
            styles.push($(domEle).html());
        });

        //grab all styles referenced by stylesheet links on the page
        var ajaxCalls = [];
        $("[rel=stylesheet]").each(function () {
            ajaxCalls.push($.get(this.href, '', function (data) {
                styles.push(data);
            }));
        });

        return $.when.apply(null, ajaxCalls)
                .then(function () {
                    return "<html><style type='text/css'>" + styles.join("\n") + "</style>\n" + table.outerHTML + "</html>";
                });
    }
    else {
        return $.when({ owcHtml: table.outerHTML })
                .then(function (result) {
                    return "<html>" + result.owcHtml + "</html>";
                });
    }
}

Export Html Table to excel and keep css styles - Stack Overflow

css export-to-excel html-table
Rectangle 27 0

I've created a systematic approach to CSS development. This way I can utilize a standard that never changes. First I started with the 960 grid system. Then I created single lines of css for basic layouts, margins, padding, fonts and sizes. I then string them together as needed. This allows me to keep a consistent layout across all of my projects and utilize the same css files over and over. Because they are not specific. Here's an example: ----div class="c12 bg0 m10 p5 white fl"/div--- This means that the container is 12 columns across, utilizes bg0 has margins of 10px padding of 5 the text is white and it floats left. I could easily change this by removing or adding a new - What I call a "light" style- Instead of creating a single class with all these attributes; I simply combine the single styles as I code the page. This allows me to create any combination of styles and does not limit my creativity or cause me to create a massive number of styles that are similar. Your style sheets become a lot more manageable, minimized and allow you to re-use it over and over. This method I have found to be fantastic for rapid design. I also no longer design first in PSD but in the browser which also saves time. In addition because I have also created a naming system for my backgrounds and page design attributes I simply change out my image file when creating a new project.(bg0 = body background according to my naming system) That means that if I previously had a white background with one project simply changing it to black simply means that on the next project bg0 will be a black background or another image..... I have not found anything wrong with this method yet and it seems to work very well.

Do you know what paragraphs are for?

This is "UI Framework" like unto Bootstrap or others, once you know the lexicon you are good to go, it is all about the learning curve and acceptance of the terms used. Still though I can think of some very specific instances where your example will struggle to meet the designers requirements.

html - Single huge .css file vs. multiple smaller specific .css files?...

html css design stylesheet
Rectangle 27 0

I agree that if you have big site with different type of pages your should split your css into different files. However I think that this should not be made based on pages. It should be made on components. When you design CSS you have to split your pages into modules. A module should contain its styles and its media queries. I found that putting the media queries in different file leads to slow development. You may even end up with something like CSS constructor. I.e. a tool which selects the specific modules, combine them in a file and server it like that. You still have only one file, but its content is different.

yes they should be broken down in components in dev stages. My question is more about production and HTTP performance vs browser rendering performance. I personally use less and on production I have a global css file and 1 for the page. The page would load the components with less imports.

I could say that the browsers are really really fast in rendering CSS. It's not something critical I guess. In most of the cases you should focus on the HTTP performance part. I.e. lower file size and only one http request.

html5 - single css or multiple for responsive design - css speed - Sta...

html5 css3 responsive-design
Rectangle 27 0

I've created a systematic approach to CSS development. This way I can utilize a standard that never changes. First I started with the 960 grid system. Then I created single lines of css for basic layouts, margins, padding, fonts and sizes. I then string them together as needed. This allows me to keep a consistent layout across all of my projects and utilize the same css files over and over. Because they are not specific. Here's an example: ----div class="c12 bg0 m10 p5 white fl"/div--- This means that the container is 12 columns across, utilizes bg0 has margins of 10px padding of 5 the text is white and it floats left. I could easily change this by removing or adding a new - What I call a "light" style- Instead of creating a single class with all these attributes; I simply combine the single styles as I code the page. This allows me to create any combination of styles and does not limit my creativity or cause me to create a massive number of styles that are similar. Your style sheets become a lot more manageable, minimized and allow you to re-use it over and over. This method I have found to be fantastic for rapid design. I also no longer design first in PSD but in the browser which also saves time. In addition because I have also created a naming system for my backgrounds and page design attributes I simply change out my image file when creating a new project.(bg0 = body background according to my naming system) That means that if I previously had a white background with one project simply changing it to black simply means that on the next project bg0 will be a black background or another image..... I have not found anything wrong with this method yet and it seems to work very well.

Do you know what paragraphs are for?

This is "UI Framework" like unto Bootstrap or others, once you know the lexicon you are good to go, it is all about the learning curve and acceptance of the terms used. Still though I can think of some very specific instances where your example will struggle to meet the designers requirements.

html - Single huge .css file vs. multiple smaller specific .css files?...

html css design stylesheet
Rectangle 27 0

I don't know of a way to treat different typeface variants of a single font as one family, but typefaces tend to have large file sizes so you probably wouldn't want to import all those typefaces into your app anyway. Instead, you could use just the Medium font and then set bold and italic attributes for that.

For example, if you have android:textStyle="bold" set in your XML layout, you can do this in your code to keep the bold style:

Typeface currentTypeFace = textView.getTypeface();
if (currentTypeFace != null && currentTypeFace.getStyle() == Typeface.BOLD) {
    textView.setTypeface(tf, Typeface.BOLD);
} else {
    textView.setTypeface(tf);
}

Android set Roboto font with bold, italic, regular,... (something like...

android fonts typeface fontfamily
Rectangle 27 0

Unfortunatly, android is not providing any method to apply custom font for the complete app in one place.

However, you can create your CustomTextView extends TextView and CustomButton extends Button. In that you can set the font by creating a FontInstance.

android - Change font of entire application - Stack Overflow

android fonts styles custom-font
Rectangle 27 0

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>EDM Template</title>
<style type="text/css">

body, ul, ol, li, a, table{
padding:0;
margin:0;
}
#container{
max-width:848px !important;
margin:auto !important;
}

body,td,th {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 11px;
    line-height:19px;
    color: #333;
}
body {
    background-color: #333;
}
a:link {
    color: #333;
}
a:visited {
    color: #333;
}
a:hover {
    color: #333;
}
a:active {
    color: #333;
}
table { 
border:2px solid #000;
}
p {
    margin-top:0;
    margin-bottom:10px;
}
li {
    margin-bottom:10px;

}
ul
{
padding-left: 20px;
}

</style>
</head>

<body>
<div id="container">
<br /><br />

<table border="0" cellspacing="0" cellpadding="0" bgcolor="#FFFFFF"><br />
  <tr>
    <td width="848" colspan="3"><img src="images/header.jpg" width="848" height="209" /></td>
  </tr>
  <tr>
    <td width="848" colspan="3"><img src="images/head1.jpg" width="848" height="60"></td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="49">&nbsp;</td>
    <td width="750"><strong>Cisco SA special focus supplement in Brainstorm</strong><br />
    Ciscos special focus supplement in Brainstorm Magazine, themed The Internet of Everything  combining people, data, process and things, is to be published in September 2013. The final approval process has been completed and the supplement was sent to print.</td>
    <td width="49">&nbsp;</td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="848" colspan="3"><img src="images/head2.jpg"></td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="49">&nbsp;</td>
    <td width="750">
<p><strong>w/o August 19th 2013</strong><br />
- Announcement on Ciscos commitment to the Channel in South Africa (including the appointment of Kevin Hardy as Director Partner Operations Sales and AxizWorkgroups appointment as a Cisco distributor) to be distributed. Interviews will also be set up for Kevin Hardy with The Margin and Channelwise.<br />
- SATNAC/Telkom pre-event announcement</p>

<p><strong>w/o August 26th 2013</strong> <br />
  - 
  Announcement on Cisco Beefing up its Africa team.</p>
<p><strong>m/o August 2013</strong> <br />
  - Opinion piece on skills development;
o    Announcement about the appointment of David Mphelo, Public Affairs Director.</p> 

<p><strong>1 to 4 September 2013 <br />
</strong>- SATNAC/Telkom event. One-on-one interviews to be scheduled for Alpheus Mangale, Managing Director of Cisco South Africa; Dr Robert Pepper, Cisco Vice President of Global Technology Policy and Craig Zeeman, Director Cisco Service Provider Business. The event will also include a Cisco interview with Business Day TV (formerly Summit TV) on September 2nd on the latest trends in telecommunications and technology.</p> 

<p><strong>September 24th 2013</strong><br />
  Press release on the Panini/Hold Em, Ciscos new line of core routers and optical transport products.</p> 

<p><strong>September 30th 2013
</strong><br />   
NetRiders competition: four South African finalists to compete against international winners  PR activities tbc.
o   Completion of CSR marketing brochure.</p> 

<p><strong>w/o September 30th 2013 <br />
  - 
</strong>Press release on Application Centric Infrastructure.</p> 

<p><strong>m/o September 2013</strong> <br />
   Cisco SA special focus supplement in Brainstorm, to be published in September.</p> 

<p><strong>w/o October 21st 2013</strong> <br />
   System Release 10 announcement: strategy for accelerating collaboration, new WebEx solutions for the midmarket customer; TelePresence in a box; syncing TelePresence products with iPad/ mobile and desk phones via Bluetooth; infrastructure improvements.</p> 

<p><strong>20 to 23 October 2013</strong> <br />
   GovTech event at Cape Town ICC  press release to be distributed and interviews to be set up for Alpheus Mangale, Managing Director of Cisco South Africa and David Mphelo, Director Public Sector.</p> 

<p><strong>5-6 November 2013</strong> <br />
   All Africa Conference/ E-Skills Summit to be held at either University of Johannesburg or University of Pretoria with Cisco <br />
  spokespeople Alpheus Mangale, Managing Director of Cisco South Africa and Alfie Hamid, Regional Manager Corporate Affairs Sub-Saharan Africa.</p> 

<p><strong>12 -14 November 2013 </strong><br />
   Africa Com 2013 event at Cape Town ICC  press announcement to be distributed and interview to be set up for Alpheus Mangale, Managing Director of Cisco South Africa and David Meads, Vice President for Africa. </p>    



    </td>
    <td width="49">&nbsp;</td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="848" colspan="3"><img src="images/head3.jpg"></td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="49">&nbsp;</td>
    <td width="750"><p><strong>Ciscos Visual Networking Index (VNI) Forecast (2012 to 2017)</strong><br />
      Cisco received coverage in various publications following the distribution of Ciscos VNI Forecast (2012  2017).</p>
<p><strong>Business Day</strong><br />
- Broadband picking up speed but still too slow (Print  attached)<br />
- Broadband picking up speed but still too slow (Online)<br /></p>
<p><strong>ITWeb</strong><br />
SA has 'insatiable thirst' for Internet services</p>
<p><strong>Biztech Africa</strong><br />
MEA IP traffic to top 3.5 Exabytes a month by 2017</p></td>
    <td width="49">&nbsp;</td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="848" colspan="3"><img src="images/head4.jpg"></td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="49">&nbsp;</td>
    <td width="750"><p><strong>Cisco mentioned in various articles regarding planned job cuts</strong><br />Cisco was mentioned in various publications regarding the announcement that Cisco will cut 4 000 jobs, equal to 5% of its workforce.</p>
<p><strong>Fin24</strong><br />
Cisco slashes 4 000 jobs</p>
<p><strong>Business Report</strong><br />
Cisco cuts jobs amid slow progress</p>
<p><strong>The Post</strong><br />
Cisco cuts jobs amid slow progress</p>
<p>The Citizen<strong></strong><br />
Cisco to cut 4,000 jobs</p>

    </td>
    <td width="49">&nbsp;</td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="848" colspan="3"><img src="images/head5.jpg"></td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="49">&nbsp;</td>
    <td width="750"><ul>
      <li>Firms take initiative on technology vacancies: Information and communications technology (ICT) infrastructure spending is about to breach R20bn a year for the next 10 years, according to a 2012 Joburg Centre for Software Engineering ICT skills survey. Companies surveyed said a lack of skills was having an adverse effect on their growth. Vacancies were found to be on the increase and the companies said it was becoming harder to fill them. Vacancy demands were pegged at between 20,000 to 30,000 job opportunities, or 10%-15% of the total ICT workforce. Business Day</li>
      <li>Gauteng schools to be online soon: From January, Gautengs 2 200 schools will have uncapped wi-fi and 3G internet connectivity. This was announced on Wednesday by the provinces finance MEC Mandla Nkomfe at the launch of the e-Learning Solution programme, formerly the Gauteng Online (GoL) Schools Project. When the R2-billion GoL tender was cancelled earlier this year and reverted to a month-on-month lease agreement with the service provider, Cloudseed, the department issued two new tenders. IOL Scitech</li>
      <li>Free WiFi for Tshwane: The City of Tshwane metropolitan municipality (Tshwane) announced the roll-out plan of its free Wi-Fi project at a media briefing in Centurion today (15 August 2013). Executive mayor Kgosientso Ramokgopa announced in a statement that the roll-out will be done in partnership with Project Isizwe, a non-profit movement that aims to provide free Wi-Fi Internet to Africa. My broadband</li>
      <li>Microsoft launches African scholarship programme: In recognition of International Youth Day, Microsoft today introduced the 4Afrika Scholarship program, as part of its 4Afrika Initiative, through which it will provide mentorship, leadership and technical training, certification, university-level education, and employment opportunities for promising African students. Microsoft introduced the 4Afrika Scholarship program. Mentorship will be provided by Microsoft employees from around the world, and employment opportunities will include internships and both part-time and full-time jobs within Microsoft, as well as with the companys more than 10,000 partners across Africa. IT News Africa</li>
      <li>IBM, Accenture lead in cloud services: A new International Data Corporation (IDC) MarketScape report has ranked 13 leading vendors participating in the worldwide cloud professional services market. A majority of the vendors earned recognition for the overall strength of their capabilities, although buyers felt most vendors had certain areas that require further improvement. These improvements would elevate a vendors position in the cloud professional services market and would eventually help attract buyers. The IDC MarketScape methodology placed Accenture and IBM in the Leaders category. IT-Online</li>
      <li>HP speeds delivery of application services: HP has announced the next generation of its data centre automation, orchestration and cloud management software, which is designed to enable enterprise IT to rapidly deliver services on a massive scale  on premises or via the cloud  to meet changing enterprise needs. Social networking, mobility, big data and cloud services are changing the role of IT from infrastructure support to acting as a driver of business growth through rapid delivery of services and application releases. IT-Online</li>
      <li>Huawei appoints new MD for Zambian operations: Huawei, a leading global information and communications technology (ICT) solutions provider, has appointed Mr. Spawn Wen as the Managing Director for Huawei Zambia representative offices also responsible for business operations in Zimbabwe and Malawi. Prior to his appointment, Mr. Wen was the Deputy CEO of Huawei in Angola. IT News Africa</li>
      <li>Google pushes TV white space to connect rural Africa: Earlier this year, search engine giant Google teamed up with the Independent Communications Authority of South Africa (ICASA) to launch a pilot project using TV white space technology. The aim of the test was to demonstrate that white spaces spectrum  which is unused radio and TV frequencies  could be used to provide broadband internet connectivity to rural areas. IT News Africa</li>
    </ul>    </td>
    <td width="49">&nbsp;</td>
  </tr>
  <tr>
    <td width="49" height="25">&nbsp;</td>
    <td width="750" height="25">&nbsp;</td>
    <td width="49" height="25">&nbsp;</td>
  </tr>
  <tr>
    <td width="848" colspan="3"><img src="images/footer.jpg"></td>
  </tr>
</table>
<unsubscribe>&nbsp;</unsubscribe>
<br /><br />


</div><!--End of Container-->

</body>
</html>

It would be easier for you to style your table with css. I put your table into a div(container) and removed the width of the table which was causing the problem. just made container max-width 848 and the margin auto.

Thank you so much! I'll give it a try and see if we have some luck. I was always under the impression however for emails it was best not to style with CSS?

css - HTML Table Stretching in Outlook - Stack Overflow

html css email outlook
Rectangle 27 0

I would suggest you use a single texView for this unless you wish to give different UI design to every text like text color, background, font style etc. If you are not aware of number of texts you may include use a single textView and set text to it your concatenated full text. You text view should support multiple lines and you may also set a max limit to number of lines.... Example code:

<TextView 
        android:id="@+id/tvMyText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        android:singleLine="false" 
        android:maxLines="5"
        android:textColor="@color/black"
        android:textSize="14sp" />

        String finalText = "";
        String[] yourData =  // string your containing all texts
        for ( String text : yourData ) {
            finalText = text + " "; // add space after every text
        }
        TextView tvText = (TextView) view.findViewById( R.id.tvMyText );
        tvText.setText( finalText );

I'm not sure if this solution would work perfectly for your requirements... but you may just give it a thought.

android - How to align TextViews one next to each other from beginning...

android layout alignment