Police allege just before 9am a 17-year-old man attempted to steal money from the 57-year-old male occupant of the Wesley Street, Lutwyche, unit.
Police say the younger man then picked up a small table and struck the older man in the head with it before further assaulting him with a wooden hat rack.
The attacker then fled the scene. The charged man was located by police in Windsor a short time after the attack. Police allege he then kicked a female constable in the leg while she attempted to take him into custody.
The 17-year-old Slacks Creek man has been charged with a string of offences including grievous bodily harm, robbery as well as assaulting and obstructing police.
He is due to appear in Brisbane Magistrates Court on Monday.
The 57-year-old Lutwyche man was transported to the Royal Brisbane and Women’s hospital for treatment of serious facial injuries.